Vue vue中的 attrs到底是什麼?

2021-10-07 01:24:14 字數 1018 閱讀 5745

先來看看官方文件給的定義:

包含了父作用域中不作為 prop 被識別 (且獲取) 的 attribute 繫結 (classstyle除外)。當乙個元件沒有宣告任何 prop 時,這裡會包含所有父作用域的繫結 (classstyle除外),並且可以通過v-bind="$attrs"傳入內部元件——在建立高階別的元件時非常有用。

既然來到這裡就繼續往下看!

既然是跟元件間資料傳值有關,話不多說,直接上栗子:

let vm = new vue(,

//使用props接收

components:}

` }}}

}})

根元件內呼叫son-component,並且繫結根元件data中的變數msg;

此時son-component中通過定義props可以接收到根元件的msg;

然後son-component中定義grandson-component元件,並且繫結msg;

此時grandson-component通過定義props可以接收到son-component元件的msg;

仔細查閱元件**,發現msg在son-component元件中僅僅起到傳遞作用;

有沒有其它辦法解決傳值冗餘呢?別問,問就有;

let vm = new vue(,

//使用$attrs接收

components:}

` }}}

}})

首先,在son-component中不再接收根元件的msg;

son-component元件呼叫grandson-component元件,繫結主角$attrs;

即可實現接收根元件msg;

總結:多級元件傳值時,呼叫目標元件繫結$attrs,可直接獲取根元件所傳遞引數,而不用每一級元件逐層傳遞。

Vue vue中setInterval的問題

this.chattimer setinterval 1000 然後再元件銷毀前進行清除 beforedestroy 根據 setinterval 返回的 id 列印來看,請除定時器並沒有成功 但是這樣不行,定時器在區域性更新的時候會多次賦值.更改了一種寫法,加了一重判斷之後依舊無法解決.if th...

Vue 中 attrs 中的使用方法

vue官網是這樣介紹的 包含了父作用域中不作為 prop 被識別 且獲取 的特性繫結 class和style除外 當乙個元件沒有宣告任何 prop 時,這裡會包含所有父作用域的繫結 class和style除外 並且可以通過v bind attrs 傳入內部元件 在建立高階別的元件時非常有用。a ms...

vue Vue中的事件和方法

v on click methodfun 注意方法名後面不要跟 newvue methods 如果需要事件物件 click methodfun var1,event event 是vue內建的事件物件 newvue 原生html元素繫結事件 可以直接 事件名稱 自定義元件繫結原生事件寫法必須是 事件...