如何阻止vue进行属性代理
vue的官方文档上有这么一段话
以
_
或$
开头的属性 不会 被 Vue 实例代理,因为它们可能和 Vue 内置的属性、API 方法冲突。你可以使用例如vm.$data._property
的方式访问这些属性。
所以,使用_
或$
是一种解决办法。
当然,还有其它的方式,你可以在create
钩子中直接声明指定的属性初始化,例如this.xxxx_prop = {}
,当然,不要让该属性声明在data
中,那么此时vue不会去监测xxxx_prop
属性的变动。
还有一种办法是使用ES5的Object.preventExtensions
来将对象进行密封,或者使用Object.freeze
冻结对象,它们都可以达到相同的目的。
如果您觉得本文对您有用,欢迎捐赠或留言~
- 本博客所有文章除特别声明外,均可转载和分享,转载请注明出处!
- 本文地址:https://www.leevii.com/?p=1489