Vue 數據代理機制對屬性名的要求
在 Vue 的數據代理機制中,屬性名需遵循以下關鍵規則:
1. 禁止以 _
或 $
開頭 ??
- Vue 會跳過代理以
_
或$
開頭的屬性 - 原因:這些前綴被 Vue 保留用于內部屬性(如
_data
,_uid
,$refs
,$el
等) - 示例:
data() {return {count: 1, // ? 正常代理 (this.count)_internal: 2, // ? 不代理 (this._internal 不可訪問)$private: 3 // ? 不代理} }
2. 避免與實例方法/屬性沖突 ??
- 不能覆蓋 Vue 實例的內置屬性/方法(如
$emit
,$watch
,data
等) - 同名屬性會導致內置方法失效:
data()