我目前正在为 Vue 实例概念而苦苦挣扎。我正在使用带有 webpack 的 vue-loader 并创建了一个我正在导入的 vue 组件。
import Vue from 'vue';
import Search from '../Search.vue';
const vm = new Vue({
el: 'search',
render: h => h(search)
});
Run Code Online (Sandbox Code Playgroud)
在组件上:
export default {
data: function() {
return {
results: 'current results'
}
}
}
Run Code Online (Sandbox Code Playgroud)
我想要来自组件内部的触发器和事件(在属性更改时),我可以从实例中观察它们。
使用 API 应该是这样的:
vm.$watch('results', function (newVal, oldVal) {
// do something
})
Run Code Online (Sandbox Code Playgroud)
但我没有触发任何东西。
我想我不知道如何使用 Vue 实例,因为我也不能添加任何可在组件上访问的实例初始化数据,例如:
const vm = new Vue({
el: 'search',
data: {index: 1},
render: h => h(search)
});
Run Code Online (Sandbox Code Playgroud)
索引在组件内部也不可用。
我该如何解决?