美文网首页
vue组件化

vue组件化

作者: A_9c74 | 来源:发表于2018-11-16 10:51 被阅读0次

什么是组件:
组件的出现,就是为了拆分Vue实例的代码量的,能够让我们以不同的组件,来划分不同的功能模块,将来我们需要什么样的功能,就可以去调用对应的组件即可;
组件化和模块化的不同:

  • 模块化:是从代码逻辑的角度进行划分的;
  • 组件化:是从UI界面的角度进行划分的;

创建组件的三种方式:
方式一:
Vue.component定义全局组件:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<script src="js/vue.js"></script>
<body>
<div id="app">
   <!--<mycom1></mycom1>-->
    <my-com1></my-com1>
</div>
</body>
<script>
    /*var com1=Vue.extend({
        template:"<h3>这是使用Vue.extend创建的组件</h3>"//通过template属性,指定了组件要展示的HTML结构
    })*/
    //Vue.component('mycom1',com1)
    /*如果使用驼峰命名 则引用组件的时候,需要把大写的驼峰改为小写的字母,同时 两个单词之间 用-连接*/
    /*第一个参数 组件的名称,将来在引用组件的时候就是通过这个名称来当做标签进行引用*/
    /*第二个参数 Vue.extend创建的组件,其中template 就是组件将来要展示的HTML结构*/
    Vue.component('myCom1',Vue.extend({
        template:"<h3>这是使用Vue.extend创建的组件</h3>"//通过template属性,指定了组件要展示的HTML结构
    }))
    var vm=new Vue({
        el:'#app',
        data:{

        }
    })
</script>
</html>

方式二:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
  <script src="js/vue.js"></script>
</head>
<body>
<div id="app">
<mycom2></mycom2>
</div>
</body>
<script>
  Vue.component('mycom2',{
      //不论是哪种方式创建出来的组件,组件的template属性指向的模版内容,必须有且只能有唯一的一个根元素
      template: '<div><h3>这是直接使用Vue.component创建出来的组件</h3><span>123</span></div>'
  })
  var vm=new Vue({
      el:"#app"
  })
</script>
</html>

方式三:
外部定义组件模板

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="js/vue.js"></script>
</head>
<body>
<div id="app">
    <!--在被控制的#app 外面 使用 template元素 定义 组件的html结构-->
    <mycom3></mycom3>
</div>
<div id="app2">
    <login></login>
</div>
<template id="tmpl">
    <div>
        <h1>这是通过template元素在外部定义的组件结构</h1>
    </div>
</template>
<template id="tmpl2">
    <div>
        <h1>这是私有组件</h1>
    </div>
</template>
</body>
<script>
    Vue.component('mycom3',{
        template:'#tmpl'
    })
    var vm=new Vue({
        el:"#app"
    })
    /*通过 components定义一个私有组件*/
    var vm2=new Vue({
        el:"#app2",
        components:{
            login:{
                template:'#tmpl2'
            }

        }
    })
</script>
</html>

相关文章

  • Vue组件和父子组件

    【一】Vue组件化 创建组件构造器对象Vue.extend() 创建组件构造器const cpnc = Vue.e...

  • Vue.js的组件化思想 —上

    一、Vue中的组件 Vue视图层的灵魂 — 组件化 组件(Component)是 Vue.js 最强大的功能之一...

  • (15)打鸡儿教你Vue.js

    组件化vue.js 组件单向绑定组件双向绑定组件单次绑定 创建组件构造器注册组件使用组件 Vue.extend()...

  • 大话大前端时代(一) —— Vue 与 iOS 的组件化

    大话大前端时代(一) —— Vue 与 iOS 的组件化 大话大前端时代(一) —— Vue 与 iOS 的组件化

  • vue

    1、什么是组件化、有什么好处、vue如何创建组件、vue组件之间如何通信 什么是组件化。任何一个页面我们都可以抽象...

  • Vue组件化

    定义Vue组件化 什么是组件化:组件的出现,就是为了拆分Vue实例的代码量的,能够让我们以不同的组件,来划分不同的...

  • vue-5

    组件(可复用的vue实例) 注册组件必须在Vue实例化之前全局组件(跨vue实例)组件的data选项必须是一个函数...

  • Vue实践与总结——组件与数据

    Vue实现组件化流程 Vue提供了一套构建组件的API,用于声明和实现 根组件,可复用组件 Vue库提供了名为Vu...

  • vue组件化思想

    组件化 组件化是vue的核心思想,主要是为了代码重用。 组件通信 父组件=>子组件 属性props 引用refs ...

  • vue基础概念介绍

    组件化 vue的组件化是指把传统的html, css, js资源集成到一个.vue文件中,组成一个单独的组件,被其...

网友评论

      本文标题:vue组件化

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