最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue.js父組件使用外部對象的方法示例

 更新時間:2017年04月25日 09:18:05   作者:zakwu  
在我們?nèi)粘i_發(fā)中經(jīng)常因為思維定式,我們會犯一些奇怪的錯誤,有時候看似簡單的問題卻給出了復(fù)雜的解決方案。下面這篇文章主要介紹了vue.js父組件使用外部對象的方法,這個看似簡單卻繞了一些彎路的問題,有必要和大家分享下,需要的朋友可以參考學(xué)習(xí),下面來看看吧。

最近在碰到有同學(xué)問我,vue父組件怎么使用外部對象,具體例子如下:

有組件a:

<div @click="onClick">component a</div>
// componet a
...
methods: {
 onClick(evt) {
  // doSomething 這里只能拿到 mouseEvent
  this.outsideClickHandler(evt); // 調(diào)用外部處理函數(shù)
 }
}
...

有組件B,引用組件a,并傳入outsideClickHandler方法:

<v-componetA :outside-click-handler="onClick">componentB</v-componetA>

對以上這種封裝是組件庫中再常見不過的封裝了,實際使用中,有時候會需在component B傳入component A的outsideClickHandler方法中使用component B中的數(shù)據(jù)對象,而component的代碼又不能更改,這時候怎么辦呢?

其實解決方案也是非常簡單,但是有時候我們會"執(zhí)迷不悟"。

廢話不說,上代碼!

// componet b
...
data() {
 a: {} // 數(shù)據(jù)
},
methods: {
 onClick(evt) {
  // 關(guān)鍵在于返回一個函數(shù)哦
  return (evt) => {
   // 這里也可以直接閉包使用
   console.log(this.a);
  }
 }
}
...

總之,對于vue函數(shù)來說,當(dāng)無法直接傳入?yún)?shù)的時候,可以考慮閉包實現(xiàn),本文所說的也只是一個簡單例子,js的函數(shù)作為一等公民還有很多有趣的應(yīng)用。

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關(guān)文章

最新評論

乡城县| 沙田区| 建平县| 全州县| 陈巴尔虎旗| 华亭县| 滨海县| 株洲县| 蓬安县| 神木县| 富川| 渝中区| 清原| 高邑县| 西乌珠穆沁旗| 德化县| 云和县| 安图县| 沛县| 松溪县| 伊春市| 迁西县| 云霄县| 霍邱县| 五台县| 宜君县| 西充县| 黄石市| 镇康县| 淳化县| 大渡口区| 济源市| 巴林右旗| 忻州市| 普安县| 苏州市| 华宁县| 明溪县| 门头沟区| 柳州市| 南涧|