国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專(zhuān)欄INFORMATION COLUMN

Vue 2.x 實(shí)戰(zhàn)之后臺(tái)管理系統(tǒng)開(kāi)發(fā)(二)

Ilikewhite / 3213人閱讀

摘要:導(dǎo)語(yǔ)承接上文實(shí)戰(zhàn)之后臺(tái)管理系統(tǒng)開(kāi)發(fā)一在上一篇文章中,我詳細(xì)敘述了如何創(chuàng)建項(xiàng)目框架和引入各種后臺(tái)常用插件,做好這些準(zhǔn)備工作后,我們就可以著手進(jìn)行頁(yè)面的開(kāi)發(fā)了。如果傳入的數(shù)據(jù)不符合規(guī)格,會(huì)發(fā)出警告。

1. 導(dǎo)語(yǔ)

承接上文:Vue 2.x 實(shí)戰(zhàn)之后臺(tái)管理系統(tǒng)開(kāi)發(fā)(一)

在上一篇文章中,我詳細(xì)敘述了如何創(chuàng)建項(xiàng)目框架和引入各種后臺(tái)常用插件,做好這些準(zhǔn)備工作后,我們就可以著手進(jìn)行頁(yè)面的開(kāi)發(fā)了。在開(kāi)發(fā)過(guò)程中,會(huì)遇到一些常見(jiàn)的需求和問(wèn)題,我整理了一下,有以下幾點(diǎn)。

2. 常見(jiàn)需求 01. 父子組件通信

a. 父 -> 子(父組件傳遞數(shù)據(jù)給子組件)

使用 props,具體查看文檔 - 使用 Prop 傳遞數(shù)據(jù)(https://cn.vuejs.org/v2/guide...使用-Prop-傳遞數(shù)據(jù))

b. 父 -> 子(在父組件上調(diào)用子組件內(nèi)的方法)

使用 ref,具體查看文檔 - 子組件索引(https://cn.vuejs.org/v2/guide...子組件索引)


// 父組件 script
this.$refs.profile.someMethod();

注意:如果在子組件上設(shè)置 ref 屬性,則可以通過(guò) this.$refs 獲取到該子組件對(duì)象,如果在普通的 html 標(biāo)簽上設(shè)置 ref 屬性,則獲取到的是 Dom 節(jié)點(diǎn)。

c. 子 -> 父(在父組件上獲取子組件內(nèi)的數(shù)據(jù))

同上,也是利用 ref

// 父組件 script
let childData = this.$refs.profile.someData;

d. 子 -> 父(子組件內(nèi)觸發(fā)事件,父組件監(jiān)聽(tīng)事件)

父組件可以在使用子組件的地方直接用 v-on 來(lái)監(jiān)聽(tīng)子組件觸發(fā)的事件,具體查看文檔 - 使用 v-on 綁定自定義事件(https://cn.vuejs.org/v2/guide...使用-v-on-綁定自定義事件)


// 父組件 script
methods: {
    parentHandle(params){
        // 這個(gè)方法在子組件 emit childTrigger 事件后會(huì)執(zhí)行
        // params 為子組件里觸發(fā)事件時(shí)傳的參數(shù)
    }
}
// 子組件 user-profile script
this.$emit("childTrigger", params);

e. 子 -> 父(子組件傳值,父組件里使用,具體實(shí)現(xiàn)見(jiàn) 03

01總結(jié):

應(yīng)用場(chǎng)景示例:在父組件上打開(kāi)側(cè)邊欄子組件,可以傳 prop visible(true)來(lái)控制側(cè)邊欄打開(kāi);側(cè)邊欄內(nèi)部有關(guān)閉按鈕,就在點(diǎn)擊關(guān)閉按鈕后觸發(fā)一個(gè)事件,父組件監(jiān)聽(tīng)事件執(zhí)行方法將 data visible 改為 false
PS:父組件傳值到子組件,傳的值是 Object 類(lèi)型,子組件使用 v-model 可以修改該值(將某個(gè)表單元素的 v-model 設(shè)為該值),父組件可直接獲取到改變后的值。

02. 全局函數(shù)

有時(shí)候會(huì)用到一些工具類(lèi)函數(shù),希望可以全局調(diào)用,而不是局限于某個(gè)組件中。

Step 1:
項(xiàng)目根目錄/static/js/ 目錄下新建一個(gè) util.js 文件,將常用的工具函數(shù)寫(xiě)在這里面。

Step 2:
index.html 里面引入 util.js,就可以在 .vue 文件里使用那些方法了,如下:

  

02總結(jié):

使用這個(gè)方法可以使得一些使用頻率高的函數(shù)可以在所有 .vue 文件中被調(diào)用,笨拙而又簡(jiǎn)單。

03. slot

以前看文檔時(shí)一直不理解如何使用 slot,現(xiàn)在用多了 elementui 的組件之后,就漸漸發(fā)現(xiàn)了它的實(shí)用性。

簡(jiǎn)單來(lái)說(shuō),使用 slot 可以使我們做到:在父組件里使用子組件時(shí),在子組件里插入一些自定義的內(nèi)容(html 代碼啥的),具體查看文檔:http://cn.vuejs.org/v2/guide/...使用-Slot-分發(fā)內(nèi)容;
更神奇的功能是 作用域插槽,可以讓我們?cè)?strong>父組件里使用子組件時(shí),獲取子組件傳來(lái)的數(shù)據(jù),具體查看文檔:http://cn.vuejs.org/v2/guide/...作用域插槽。

簡(jiǎn)單應(yīng)用示例




這里寫(xiě)的東西會(huì)覆蓋子組件里的 slot 標(biāo)簽所在的位置

渲染結(jié)果:

可以應(yīng)用簡(jiǎn)單的 slot 來(lái)達(dá)到為不同的按鈕填充文字的目的:

詳情
搜索



作用域插槽示例


在父級(jí)中,具有特殊屬性 scope