Vue中的內(nèi)置指令與自定義指令

一、內(nèi)置指令

  • 1堰塌、v-text指令 :向標簽中添加文本

  • 2涡拘、v-html指令:向指定恒點中渲染包含html結(jié)構(gòu)的內(nèi)容。
    2-1嚼锄、與插值語法的區(qū)別:
    (1).v-html會替換掉節(jié)點中所有的內(nèi)容减拭,{{xx}}則不會 。
    (2).v-html可以識別html結(jié)構(gòu)区丑。
    2-2拧粪、嚴重注意: v-html有安全性問題!2捉摹可霎!
    (1).在網(wǎng)站上動態(tài)演染任查HTML是非常危險的,容易導(dǎo)致XSS攻擊宴杀。
    (2).定要在可信的內(nèi)容上使用v-html.永遠不要用在用戶提交的內(nèi)容上!

  • 3癣朗、v-cloak指令:本質(zhì)是一個特殊屬性。Vue實側(cè)創(chuàng)建完畢并接管容器后旺罢。會制掉v-cloak屬性旷余,使用css配合v-cloak間以解決網(wǎng)速設(shè)時頁面展示出{{xxx}}的問題

  • 4绢记、v-once指令:v-once所在節(jié)點在初次動態(tài)渲染后。就視為靜態(tài)內(nèi)容了正卧,以后數(shù)據(jù)的改動不會引起v-once所在結(jié)構(gòu)的更新蠢熄。可以用其優(yōu)化性能炉旷。

  • 5护赊、v-pre指令:跳過其所在節(jié)點的編譯過程±荆可利用它跳過:沒有使用指令語法骏啰、沒有使用插值語法的節(jié)點。會加快編譯抽高。

二判耕、自定義指令

  • 1、定義語法:
    (1).局部指令:
new Vue({                               
     directives:{指令名:配置對象}    
})

new Vue({
    directives{指令名:回調(diào)兩數(shù)}
 })   

(2).全局指令:

Vue.directive(指令名,配置對象)

Vue.directive(指令名回調(diào)兩數(shù))
  • 2翘骂、配置對象中常用的3個回調(diào)
    (1)壁熄、bind:指令與元素成功綁定時調(diào)用。
    (2)碳竟、inserted:指令所在元素被插入頁面時調(diào)用.
    (3)草丧、update:指令所在模板結(jié)構(gòu)被重新解析時調(diào)用。

  • 3莹桅、備注:
    1.指令定義時不加v-昌执。但使用時要加v-;
    2.指令名如果是多個單詞,要使用kebab-case命名方式诈泼,不要用camelCase命名懂拾。

<div id="root">
        <h1>正常值 : <span v-text="num"></span></h1>
        <h1>放大10倍 : <span v-big="num"></span></h1>
        <button @click="num++">點我num+1</button>
        <hr />
        <input type="text" v-bind:value="num" />
        <input type="text" v-fbind:value="num" />
    </div>
<script>
    Vue.config.productionTip = false; //阻止vue在啟動時生成生產(chǎn)提示

    // 全局指令
    Vue.directive("fbind", {
        // 指令與元素成功綁定時
        bind(element, binding) {
            console.log("bind");
            element.value = binding.value;
        },
        // 指令所在元素插入頁面時
        inserted(element, binding) {
            console.log("inserted");
            element.focus();
        },
        // 指令所在模板被重新解析時
        update(element, binding) {
            console.log("ipdate");
            element.value = binding.value;
        },
    });

    //創(chuàng)建Vue實例
    const vm = new Vue({
        //ViewModel
        el: "#root",
        data: {
            num: 1,
        },
        methods: {},
        directives: {
            // big何時會被調(diào)用? 1铐达、指令與元素成功綁定時岖赋;2、指令所在的模板被重新解析時
            big(element, binding) {
                element.innerText = binding.value * 10;
                console.log(element, binding.value, this);
                // !!!注意  此處的this指向 window
            },

             fbind:{
                 // 指令與元素成功綁定時
                 bind(element,binding){
                     console.log('bind');
                     element.value = binding.value;
                 },
                 // 指令所在元素插入頁面時
                 inserted(element,binding){
                     console.log('inserted');
                     element.focus();
                 },
                 // 指令所在模板被重新解析時
                 update(element,binding){
                     console.log('ipdate');
                     element.value = binding.value;
                 }
             }
        },
    });

    // console.log(vm);
</script>

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末瓮孙,一起剝皮案震驚了整個濱河市唐断,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌杭抠,老刑警劉巖脸甘,帶你破解...
    沈念sama閱讀 216,591評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異祈争,居然都是意外死亡斤程,警方通過查閱死者的電腦和手機角寸,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,448評論 3 392
  • 文/潘曉璐 我一進店門菩混,熙熙樓的掌柜王于貴愁眉苦臉地迎上來忿墅,“玉大人,你說我怎么就攤上這事沮峡【纹辏” “怎么了?”我有些...
    開封第一講書人閱讀 162,823評論 0 353
  • 文/不壞的土叔 我叫張陵邢疙,是天一觀的道長棍弄。 經(jīng)常有香客問我,道長疟游,這世上最難降的妖魔是什么呼畸? 我笑而不...
    開封第一講書人閱讀 58,204評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮颁虐,結(jié)果婚禮上蛮原,老公的妹妹穿的比我還像新娘。我一直安慰自己另绩,他們只是感情好儒陨,可當我...
    茶點故事閱讀 67,228評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著笋籽,像睡著了一般蹦漠。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上车海,一...
    開封第一講書人閱讀 51,190評論 1 299
  • 那天笛园,我揣著相機與錄音,去河邊找鬼侍芝。 笑死喘沿,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的竭贩。 我是一名探鬼主播蚜印,決...
    沈念sama閱讀 40,078評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼留量!你這毒婦竟也來了窄赋?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,923評論 0 274
  • 序言:老撾萬榮一對情侶失蹤楼熄,失蹤者是張志新(化名)和其女友劉穎忆绰,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體可岂,經(jīng)...
    沈念sama閱讀 45,334評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡错敢,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,550評論 2 333
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片稚茅。...
    茶點故事閱讀 39,727評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡纸淮,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出亚享,到底是詐尸還是另有隱情咽块,我是刑警寧澤,帶...
    沈念sama閱讀 35,428評論 5 343
  • 正文 年R本政府宣布欺税,位于F島的核電站侈沪,受9級特大地震影響拥诡,放射性物質(zhì)發(fā)生泄漏坯苹。R本人自食惡果不足惜常空,卻給世界環(huán)境...
    茶點故事閱讀 41,022評論 3 326
  • 文/蒙蒙 一帘腹、第九天 我趴在偏房一處隱蔽的房頂上張望没讲。 院中可真熱鬧禽翼,春花似錦捍壤、人聲如沸续誉。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,672評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至荆责,卻和暖如春滥比,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背做院。 一陣腳步聲響...
    開封第一講書人閱讀 32,826評論 1 269
  • 我被黑心中介騙來泰國打工盲泛, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人键耕。 一個月前我還...
    沈念sama閱讀 47,734評論 2 368
  • 正文 我出身青樓寺滚,卻偏偏與公主長得像,于是被迫代替她去往敵國和親屈雄。 傳聞我的和親對象是個殘疾皇子村视,可洞房花燭夜當晚...
    茶點故事閱讀 44,619評論 2 354

推薦閱讀更多精彩內(nèi)容