zoukankan      html  css  js  c++  java
  • 折腾vue--vue自定义组件(三)

    1、创建组件  demo.vue,内容如下:

    <template>
      <div>
        <input
          type="button"
          :value="name"
          @click="btnClickHandler"
        />
      </div>
    </template>
    
    <script>
    export default {
      data () {
        return {}
      },
      props: ['name'],
      methods: {
        btnClickHandler: function () {
          // this.$emit('btnClick') 用于执行父组件中绑定的事件
          this.$emit('btnClick')
          // 还可以执行单独的组件自己的方法
          alert('子组件的点击')
        }
      }
    }
    </script>
    
    <!-- Add "scoped" attribute to limit CSS to this component only -->
    <style scoped lang='scss'>
    </style>

    ps.

      a.data最好写返回值,即使是空对象,否则调试时,可以运行,但浏览器会报错,一片红看的不难受么

      b.props用于参数的传递

      c.自定义事件,并将自定义事件绑定到button的单击事件中,自定义事件添加代码:this.$emit('btnClick'),此段代码的作用是:在父组件使用绑定自定义事件时,执行父组件中绑定的事件

    2、使用<template>

      <div id="app">
        <sw-header name="abc" @btnClick="click"></sw-header>
        <router-view />
      </div>
    </template>
    
    <script>
    import swHeader from './components/demo'
    
    export default {
      name: 'App',
      components: {
        swHeader
      },
      methods: {
        click: function () {
          alert('父组件的点击事件')
        }
      }
    }
    </script>
    
    <style lang="scss">
    /*去除浏览器默认样式*/
    @import './assets/reset.css';
    /*sass变量*/ $background: #ccc;
    </style>

    ps.

      a.引用组件

      b.注册组件

      c.参数传递:按照html的普通属性使用即可将参数传递给组件

      d.定义事件,并绑定到组件的自定义事件中

  • 相关阅读:
    create joint
    delphi 使用parent让进度条上显示文字
    abSymMeshMEL.txt
    ini写配置信息
    CreateBindGroupNode.txt
    CreateaJointCurve.txt
    09 IKFKMatch.txt
    TIF_to_MAP.BAT
    ImportBVHv20.txt
    FormatDateTime 一段以时间为命令的代码
  • 原文地址:https://www.cnblogs.com/zhoushangwu/p/11715072.html
Copyright © 2011-2022 走看看