zoukankan      html  css  js  c++  java
  • vue2.0 #$emit,$on的使用

    vm.$on( event, callback )

    监听当前实例上的自定义事件。事件可以由vm.$emit触发。回调函数会接收所有传入事件触发函数的额外参数。

    vm.$emit( event, […args] )

    触发当前实例上的事件。附加参数都会传给监听器回调。

    例子:

    //父组件
    <template>
        <ratingselect @select-type="onSelectType"></ratingselect>
    </template>
    <script>
        data () {
          return {
            selectType: 0,
        },
        methods: {
          onSelectType (type) {
            this.selectType = type
          }
        }
    </script>

    父组件使用@select-type="onSelectType"监听由子组件vm.$emit触发的事件,通过onSelectType()接受从子组件传递过来的数据,通知父组件数据改变了。

    // 子组件
    <template>
      <div>
        <span @click="select(0, $event)"  :class="{'active': selectType===0}"></span>
        <span @click="select(1, $event)"  :class="{'active': selectType===1}"></span>
        <span @click="select(2, $event)"  :class="{'active': selectType===2}"></span>
      </div>
    </template>
    <script>
        data () {
          return {
            selectType: 0,
        },
        methods: {
            select (type, event) {
                this.selectType = type
                this.$emit('select-type', type)
          }
        }
    </script>

    子组件通过$emit来触发事件,将参数传递出去。

  • 相关阅读:
    Tomcat启动流程简析
    Tomcat的启停脚本源码解析
    Servlet规范
    CCNA
    CCNA-Part 6
    MYSQL 使用基础
    CCNA-Part5
    CCNA-Part4 -网络层
    MySQL 字符串索引优化方案
    CCNA-Part3
  • 原文地址:https://www.cnblogs.com/web-chuanfa/p/9134816.html
Copyright © 2011-2022 走看看