【发布时间】:2017-06-15 11:33:25
【问题描述】:
我想创建一个 Vue.js 组件,它从其父组件接收属性,例如:
<table-cell :value="foo" format="date" />
因为value 和format 被定义为属性,Vue 会自动将观察者注册到它们的值。一般来说这很好,但对于我的用例,我肯定知道这些值不会改变,因此不需要观察它们。
鉴于我的表格单元组件可以在一个具有 1,000 行和 10 列的表格中,这两个属性将创建 20,000 个观察者,我想避免所有这些开销(而我真正的表格单元组件有更复杂属性)。
有什么方法可以禁止组件属性被观察以避免浪费 CPU 和内存资源?
更新: 我找到了一个使用 functional 组件方法的低级解决方案,在此解释:https://vuejs.org/v2/guide/render-function.html#Functional-Components
我已经用这个 JSFiddle 对其进行了测试:https://jsfiddle.net/50wL7mdz/12143/
我想知道这是否是正确的方法......
【问题讨论】:
标签: javascript vue.js