美文网首页
使用Vue.component创建组件及注意事项

使用Vue.component创建组件及注意事项

作者: 莫伊剑客 | 来源:发表于2020-11-12 14:08 被阅读0次
<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>组件化</title>
</head>

<body>
  <div id="app">
    <div>
      <add-couse v-model='couse' @input='onInput' @add-couse='addCouse' ></add-couse>
      <couses-list :couses='list'></couses-list>
    </div>
  </div>
  <script src="./js/vue.js"></script>
  <script>
    // add-couse
    Vue.component('add-couse', {
      props: ['value'],
      template: `
      <div>
        <input type='text' :value='value' @input='onInput' @keyup.enter='addCouse'/>
        <button @click='addCouse'>add</button>  
      </div>
      `,
      methods: {
        addCouse() {
          this.$emit('add-couse')
        },
        onInput(e) {
          this.$emit('input', e.target.value)
        }
      }
    })
    // couse-list
    Vue.component('couses-list', {
      props: {
        couses: {
          type: Array,
          default: []
        }
      },
      created() {
        console.log(this.couses)
      },
      template: `<div>
        <p v-for='(em,index) in couses' :key='index'>{{em}}</p>
      </div>`
    })
    const app = new Vue({
      el: '#app',
      data() {
        return {
          couse: '000',
          list: ['1', '2',6]
        }
      },
      watch: {
        couses(newValue, oldValue) {
          console.log(newValue)
        }
      },
      methods: {
        onInput(val) {
          this.couse = val
        },
        addCouse() {
          this.list.push(this.couse)
          this.couse = ''
        }
      },
      updated () {
        console.log(this.list)
      },
    })
    // console.log(app, app.title)
    // console.log(app.$options.render)
  </script>
</body>

</html>

使用url引入vue库文件使用vue时,Vue.component创建的组件在应用时必须使用闭合标签,否则只能显示其中一会组件

<add-couse v-model='couse' @input='onInput' @add-couse='addCouse' ></add-couse>
<couses-list :couses='list'></couses-list>

相关文章

  • 使用Vue.component创建组件及注意事项

    使用url引入vue库文件使用vue时,Vue.component创建的组件在应用时必须使用闭合标签,否则只能显示...

  • vue.component、vue.extend、vue

    vue.component 注册全局组件 vue.extend 创建组件构造器 vue.component(组件名...

  • VUE03--{组件、生命周期}

    1.创建组件 Vue.extend、Vue.component结合创建 Vue.component创建 templ...

  • vue组件

    1.组件的创建 1.通过extend创建,component注册 2.使用Vue.component()直接创建和...

  • Vue/组件

    Vue/组件 创建组件 单独声明一个Vue.component,使用只需要在Vue实例下使用定义的组件名在组件中d...

  • Vue组件创建和传值

    Vue创建组件的方式 使用Vue.Extend()和Vue.component全局注册组件 首先我们定义一个组件并...

  • vue 组件和路由

    === Vue组件Vue组件的创建vue.extend结合vue.component创建vue.component...

  • Vue.js学习笔记(4)

    全局组件引入,使用更方便在main.js中使用 ‘vue.component(‘组件名’, ‘组件对象’);’ 父...

  • vue语法基础二-组件

    组件 Vue组件说明注册使用全局组件所有实例都能用全局组件。Vue.component(tagName, opti...

  • 超全面的vue.js使用总结

    一、Vue.js组件 ****vue.js构建组件使用**** Vue.component(``'componen...

网友评论

      本文标题:使用Vue.component创建组件及注意事项

      本文链接:https://www.haomeiwen.com/subject/bbqpbktx.html