开发VUE使用第三库,发现有bug怎么办?
寫在前面
本文只針對使用vue技術棧,進行討論。
正文
使用vue技術棧開發(fā),難免會使用第三庫,這大大提高了我們開發(fā)的效率。然而,這是第三方庫有bug怎么辦?
既然有bug,就是現(xiàn)有功能沒有達到預想效果。除了,等作者更新之外有沒有其他方法解決? 作為有作為的青年,當然不能坐以待斃咯。
第一步
閱讀第三方庫源碼,怎么閱讀這里就不要展開。 閱讀源碼,找不問題所在。
第二部
找到了問題所在,怎么解決,給作者提bug?
恩~ 這個想法不錯。但是,我們其他辦法解決。
既然代碼存在bug,我們可以重寫有bug的代碼。
沒有錯,就是重寫代碼。vue在提供了extends和mixins提供重寫代碼的方式。關于extends和mixins可以閱讀之前的一篇文章:vue mixins和extends的妙用。
舉個例子:使用mint-ui Swipe組件過程中發(fā)現(xiàn)存在的bug
import {Swipe } from 'mint-ui' export default {components: {imageSwipe: {extends: Swipe,watch: {defaultIndex (val) {this.reInitPages()}}}}}上面代碼的做法就是,定義一個imageSwipe,繼承mint-ui的Swipe組件,加一個watcher。
這時候使用imageSwipe時,props、event和slots與mint-ui的Swipe組件是一樣的。
<image-swipe></image-swipe>有上面重寫組件的思路,基本上可以開拓了一片新大陸,說的有點夸張, 哈哈哈~
寫在后面
假設,組件中嵌套為暴露出來的組件,這時沒有辦法從組件引入,可以在原有組件的基礎上重寫、繼承之后,開發(fā)出新的功能,不一定修復存在的bug。
import {Table } from 'element-ui'export default {extends: Table.components.TableHeader }以上是重寫Table中的tableHeader組件,tableHeader組件無法從element-ui中獲取,通過Table.components.TableHeader去獲取。
本文提供一種解決在引用第三庫存在bug的解決方案,僅供參考。如果不對,請指正!
總結
以上是生活随笔為你收集整理的开发VUE使用第三库,发现有bug怎么办?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: React Native项目自动化打包发
- 下一篇: ECMAScript Decorator