【发布时间】:2018-10-09 10:06:54
【问题描述】:
我创建了一个简单的组件:
https://jsfiddle.net/s08yhcda/1/
<div id="app">
<button-counter>My counter: <span v-text="count"></span></button-counter>
</div>
// Define a new component called button-counter
Vue.component('button-counter', {
data: function () {
return {
count: 0
}
},
template: '<button v-on:click="count++"><slot></slot></button>'
})
// boot up the demo
var demo = new Vue({
el: '#app'
})
但我无法绑定到内部组件数据(计数器)。组件如何将其数据暴露给<slot> 范围?我知道“事件向上,道具向下”的想法。但我仍然认为可以在其范围内(<button-counter> 元素内)绑定组件数据
我不喜欢将事件用于这么简单的事情。还有什么办法吗?
【问题讨论】:
-
您尝试访问计数器变量的位置不在按钮计数器内,而是在
#app
标签: javascript data-binding vue.js components