WoJ*_*WoJ 3 vue.js vue-component
在以下代码中,单击组件会向父级发出信号,父级会内联修改其状态(在某种意义上 - 不是通过处理程序):
Vue.component('my-component', {
template: '<div v-on:click="emitit">click on the component</div>',
methods: {
emitit: function() {
this.$emit('mysignal', 7)
}
}
})
new Vue({
el: "#root",
data: {
from: 0
}
});
Run Code Online (Sandbox Code Playgroud)
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.3.4/vue.min.js"></script>
<div id="root">
<my-component v-on:mysignal="from=5"></my-component>
from component: {{ from }}
</div>
Run Code Online (Sandbox Code Playgroud)
是否有可能访问通过所提供的参数$emit
直接v-on:mysignal="..."
?
我知道我可以使用在主 Vue 组件中定义的处理程序,但我想简化我的代码并避免在methods
.
是的,像这样:
<my-component v-on:mysignal="value => from = value"></my-component>
Run Code Online (Sandbox Code Playgroud)
<my-component v-on:mysignal="value => from = value"></my-component>
Run Code Online (Sandbox Code Playgroud)
Vue.component('my-component', {
template: '<div v-on:click="emitit">click on the component</div>',
methods: {
emitit: function() {
this.$emit('mysignal', 7)
}
}
})
new Vue({
el: "#root",
data: {
from: 0
}
});
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1630 次 |
最近记录: |