当前位置: 首页 > news >正文

推介网站yandx引擎入口

推介网站,yandx引擎入口,如何建立自己的网络销售,凡科快图是免费的吗一、语法(props) 第一步&#xff1a;在组件模板表达式中&#xff0c;可以直接用$emit()方法触发自定义事件&#xff0c; <!-- MyComponent --> <button click"$emit(someEvent)">Click Me</button> 第二步父组件可以通过 v-on (缩写为 ) 来监听…

一、语法(props)

第一步:在组件模板表达式中,可以直接用$emit()方法触发自定义事件,

<!-- MyComponent -->
<button @click="$emit('someEvent')">Click Me</button>

第二步父组件可以通过 v-on (缩写为 @) 来监听事件:

<MyComponent @some-event="callback" />//组件的事件监听器也支持 .once 修饰符:
<MyComponent @some-event.once="callback" />
注意:

1.1、像组件prop一样,事件名字也提供了自动格式转换,上面触发了一个camelCase形式命名的事件,但在父组件中可以使用kebab-case形式监听

1.2、和原生 DOM 事件不一样,组件触发的事件没有冒泡机制。你只能监听直接子组件触发的事件。平级组件或是跨越多层嵌套的组件间通信,应使用一个外部的事件总线,或是使用一个全局状态管理方案(vuex)。

二、事件参数

// 子组件
<button @click="$emit('increaseBy', 1)">Increase by 1
</button>// 父组件:
// 第一种:可以先简单写一个内联的箭头函数作为监听器,此函数会接收到事件附带的参数;
<MyButton @increase-by="(n) => count += n" />// 第二种:还可以用一个组件方法来作为事件处理函数:
<MyButton @increase-by="increaseCount" />
function increaseCount(n) {count.value += n
}
注意:

       所有传入 $emit() 的额外参数都会被直接传向监听器。举例来说,$emit('foo', 1, 2, 3) 触发后,监听器函数将会收到这三个参数值。

二、声明触发事件

组件可以显式地通过 defineEmits() 宏来声明它要触发的事件:

<script setup>defineEmits(['inFocus', 'submit'])
</script>
注意:

      1. 我们在 <template> 中使用的 $emit 方法不能在组件的 <script setup> 部分中使用,但 defineEmits() 会返回一个相同作用的函数供我们使用:

<script setup>
const emit = defineEmits(['inFocus', 'submit'])function buttonClick() {emit('submit')
}
</script>

        2. defineEmits() 宏不能再子函数中使用,必须在<script setup>的顶级作用域下

        3、如果显示的使用setup函数,不使用<script setup>,则事件需要通过emits选项来定义,emit函数也被暴露在setup的上下文对象上

export default {
  emits: ['inFocus', 'submit'],
  setup(props, ctx) {
    ctx.emit('submit')
  }
}

  3、emits 选项和 defineEmits() 宏还支持对象语法

四、事件校验

        和对 props 添加类型校验的方式类似,所有触发的事件可以使用对象形式描述

        要为事件添加校验,那么事件可以被赋值为一个函数,接受的参数就是抛出事件时传入 emit 的内容,返回一个布尔值来表明事件是否合法。

<script setup>
const emit = defineEmits({// 没有校验click: null,// 校验 submit 事件submit: ({ email, password }) => {if (email && password) {return true} else {console.warn('Invalid submit event payload!')return false}}
})function submitForm(email, password) {emit('submit', { email, password })
}
</script>

http://www.ds6.com.cn/news/85539.html

相关文章:

  • 邢台企业做网站多少钱广告联盟有哪些平台
  • 前端自己写代码建网站要花多少钱关键词搜索排名优化
  • 网站建设优化托管互联网平台
  • 钻石网站建设专业拓客公司联系方式
  • 云南网站公司营销型网站有哪些功能
  • 手机网站建设行业分析怎么接广告推广
  • 高端网吧电脑配置清单荆州seo推广
  • 全影网的网站哪儿做d上海高端seo公司
  • wordpress模板 图片站对网站和网页的认识
  • .net 网站管理系统游戏推广员如何推广引流
  • 深圳网站品牌建设线上营销工具
  • 做导航网站把别人的网址链接过来要经过允许吗市场营销互联网营销
  • 岳阳网站建设有哪些关键词在线查询
  • 培训网站排名如何制作自己的链接
  • 用台式机做网站服务器注册域名的步骤
  • 网页的网站建设在哪里预防电信网络诈骗
  • 如何做淘宝客的网站网站制作教程
  • 日照做网站的公司百度竞价
  • 合江做网站网络营销方案策划
  • 佛山市住房与城乡建设局网站天津网站建设
  • 陕西网站备案注销网站怎么做收录
  • 上海手机网站建设报价大片ppt免费下载安装
  • 周村网站建设百度搜索竞价排名
  • 南京做网站seo的抖音seo优化系统招商
  • 网站主机要怎么做德州seo优化
  • 电子商务网站建设龙华线上推广
  • 海外购物网站上填手机号码怎么做英雄联盟更新公告最新
  • 腾讯云如何建设网站首页网络营销推广手段
  • 商城型外贸网站建设想做游戏推广怎么找游戏公司
  • 有人上相亲网站做传销燕窝广州百度推广客服电话多少