我正在学习VueJs,在这个沙盒https://codesandbox.io/s/o29j95wx9中,它有以下代码行
<script>
export default {
props: {
value: {
type: String,
default: '',
}
},
computed: {
listeners () {
return {
// Pass all component listeners directly to input
...this.$listeners,
// Override input listener to work with v-model
input: event => this.$emit('input', event.target.value)
}
}
}
}
</script>
...
在...this.$listeners,
中的作用是什么?我试过搜索但每个搜索引擎都会过滤掉该查询,我不知道它叫什么名字。我还看到它在vuex中被这样使用。computed: {
...mapGetters({
currentData: 'viewerGetCurrentDocument',
folders: 'viewerGetFoldersList'
}),
...this.$listeners
中的...
就像是Object.assign
,因为你正在将对象(this.$listeners
)的键/值映射到新对象上。 (无论是添加还是覆盖您返回的新对象上的input
属性。) - bradcush