$once是一个函数,可以为Vue组件实例绑定一个自定义事件,但该事件只能被触发一次,触发之后随即被移除。
$once有两个参数,第一个参数为字符串类型,用来指定绑定的事件名称,第二个参数设置事件的回调函数。
<template>
<div>
<button @click="$emit('jpf')">按钮</button>
</div>
</template>
<script>
export default {
mounted() {
this.$once('jpf', () => {
console.log('once');
});
}
}
</script>
$once可以多次为同一个事件绑定多个回调,触发时,回调函数按照绑定顺序依次执行。
<template>
<div>
<button @click="$emit('jpf')">按钮</button>
</div>
</template>
<script>
export default {
mounted() {
this.$once('jpf', () => {
console.log('1');
});
this.$once('jpf', () => {
console.log('2');
});
}
}
</script>