• 首页
  • css3教程
  • html5教程
  • jQuery手册
  • vue手册
  • php手册
  • MySQL手册
  • apache手册
  • redis手册
  • emits

    • 类型:Array<string>| Object
    • 详细:通过 emits 选项在组件上自定义事件。emits 可以是数组或对象,从组件触发自定义事件,emits 可以是简单的数组,或者对象作为替代,允许配置和事件验证。

    在对象语法中,每个 property 的值可以为null或验证函数。验证函数将接收传递给$emit调用的其他参数。如果this.$emit('foo',1)被调用,foo的相应验证函数将接收参数1。验证函数应返回布尔值,以表示事件参数是否有效。

    const app = Vue.createApp({})
    
    // 数组语法
    app.component('todo-item', {
    	emits: ['check'],
    	created() {
    		this.$emit('check')
    	}
    })
    
    // 对象语法
    app.component('reply-form', {
    	emits: {
    		// 没有验证函数
    		click: null,
    
    		// 带有验证函数
    		submit: payload => {
    			if (payload.email && payload.password) {
    				return true
    			} else {
    				console.warn(`Invalid submit event payload!`)
    				return false
    			}
    		}
    	}
    })
    


    emits选项中列出的事件不会从组件的根元素继承,也将从$attrs property 中移除。

    上篇:data