vue组件(全局,局部,动态加载组件)


Posted in Javascript onSeptember 02, 2018

说说Vue.js组件

什么是组件:组件是Vue.js最强大的功能之一。组件可以扩展HTML元素,封装可重用的代码。在较高层面上,组件是自定义的元素,Vue.js的编译器为它添加特殊功能。在有些情况下,组件也可以是原生HTML元素的形式,以is特性扩展。

vue组件有两种,一种是全局组件,一种是局部组件。整个项目经常用到的用全局写法,用到比较少的专供特定页面用的使用局部组件。

one----全局组件引入写法:在项目的main.js中:

第一种,在main.js直接写template:' 模版字符串'

Vue.component('tab-home', { template: `<div>Home component</div>`
})
Vue.component('tab-posts', { template: `<div>Posts component</div>`
})
Vue.component('tab-archive', { template: `<div>Archive component</div>`
})

第二种,分别写tab-home.vue Tab-Posts'.vue Tab-Archive'.vue然后import TabHome from ‘ Tab-Home.vue '

Vue.use( TabHome); // 自定义全局组件的时候需要Vue.use();
  Vue.component('tab-home', TabHome)); //初始化组件
two ----局部组件引入 ,写在需要的引入的组件,如helloworld
import TabAa from './tab-aa.vue'
import TabBb from './tab-bb.vue'
import TabCc from './tab-cc.vue'
export default {
name: 'HelloWorld',
components:{TabAa,TabBb,TabCc},
three----动态组件(tab切换 使用:is="currentTabComponent")
<template>
<>
<button
v-for="tab in tabs"
v-bind:key="tab"
v-bind:class="['tab-button', { active: currentTab === tab }]"
v-on:click="currentTab = tab"
>{{ tab }}</button>
<component
v-bind:is="currentTabComponent"
class="tab"
></component>
</div>
</template>
export default {
name: 'HelloWorld',
components:{TabAa,TabBb,TabCc},
data () {
return {
currentTab: 'Home',
tabs: ['Home', 'Posts', 'Archive','Aa','Bb','Cc'],
loginType:'username',
msg: 'Welcome to Your Vue.js App'
}
},
computed: {
currentTabComponent: function () {
return 'tab-'+this.currentTab.toLowerCase()
}
},
样式:
.tab-button {
padding: 6px 10px;
border-top-left-radius: 3px;
border-top-right-radius: 3px;
border: 1px solid #ccc;
cursor: pointer;
background: #f0f0f0;
margin-bottom: -1px;
margin-right: -1px;
}
.tab-button:hover {
background: #e0e0e0;
}
.tab-button.active {
background: #e0e0e0;
}
.tab {
border: 1px solid #ccc;
padding: 10px;
}

总结

以上所述是小编给大家介绍的vue组件(全局,局部,动态加载组件)实例详解,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

Javascript 相关文章推荐
使用Js让Html中特殊字符不被转义
Nov 05 Javascript
Js 去掉字符串中的空格(实现代码)
Nov 19 Javascript
jQuery判断元素是否存在的可靠方法
May 06 Javascript
基于jquery的手风琴图片展示效果实现方法
Dec 16 Javascript
JavaScript输出当前时间Unix时间戳的方法
Apr 06 Javascript
JavaScript 经典实例日常收集整理(常用经典)
Mar 30 Javascript
Echarts之悬浮框中的数据排序问题
Nov 08 Javascript
浅谈对于“不用setInterval,用setTimeout”的理解
Aug 28 Javascript
VUE 直接通过JS 修改html对象的值导致没有更新到数据中解决方法分析
Dec 02 Javascript
Jquery Fade用法详解
Nov 06 jQuery
iview实现动态表单和自定义验证时间段重叠
Jan 10 Javascript
javascript实现数字时钟效果
Feb 06 Javascript
详解jQuery中的easyui
Sep 02 #jQuery
vue-cli脚手架的安装教程图解
Sep 02 #Javascript
vue-router 实现导航守卫(路由卫士)的实例代码
Sep 02 #Javascript
全面解析vue router 基本使用(动态路由,嵌套路由)
Sep 02 #Javascript
解决Vue 项目打包后favicon无法正常显示的问题
Sep 01 #Javascript
修改vue+webpack run build的路径方法
Sep 01 #Javascript
解决vue项目使用font-awesome,build后路径的问题
Sep 01 #Javascript
You might like
php 字符串中的\n换行符无效、不能换行的解决方法
2014/04/02 PHP
php实现的双向队列类实例
2014/09/24 PHP
php类中的各种拦截器用法分析
2014/11/03 PHP
用HTML/JS/PHP方式实现页面延时跳转的简单实例
2016/07/18 PHP
php mysql操作mysql_connect连接数据库实例详解
2016/12/26 PHP
thinkPHP5.0框架应用请求生命周期分析
2017/03/25 PHP
PHP环形链表实现方法示例
2017/09/15 PHP
php两点地理坐标距离的计算方法
2018/12/29 PHP
IE7中javascript操作CheckBox的checked=true不打勾的解决方法
2009/12/07 Javascript
Javascript绝句欣赏 一些经典的js代码
2012/02/22 Javascript
ExtJS4中使用mixins实现多继承示例
2013/12/03 Javascript
javascript图片切换综合实例(循环切换、顺序切换)
2016/01/13 Javascript
node.js微信公众平台开发教程
2016/03/04 Javascript
jQuery添加options点击事件并传值实例代码
2016/05/18 Javascript
js自调用匿名函数的三种写法(推荐)
2016/08/19 Javascript
ajax级联菜单实现方法实例分析
2016/11/28 Javascript
nodejs操作mysql实现增删改查的实例
2017/05/28 NodeJs
详解nodejs通过代理(proxy)发送http请求(request)
2017/09/22 NodeJs
angularjs模态框的使用代码实例
2019/12/20 Javascript
微信小程序绘制半圆(弧形)进度条
2020/11/18 Javascript
在JavaScript中查找字符串中最长单词的三种方法(推荐)
2021/01/18 Javascript
python通过pil模块将raw图片转换成png图片的方法
2015/03/16 Python
Python标准库之collections包的使用教程
2017/04/27 Python
基于python批量处理dat文件及科学计算方法详解
2018/05/08 Python
在Python中使用gRPC的方法示例
2018/08/08 Python
python 获取图片分辨率的方法
2019/01/08 Python
djang常用查询SQL语句的使用代码
2019/02/15 Python
pytorch掉坑记录:model.eval的作用说明
2020/06/23 Python
Pycharm新手使用教程(图文详解)
2020/09/17 Python
UGG雪地靴荷兰官网:UGG荷兰
2016/09/09 全球购物
UGG英国官方网站:UGG UK
2018/02/08 全球购物
美国在线购买空气净化器、除湿器、加湿器网站:AllergyBuyersClub
2021/03/16 全球购物
项目施工员岗位职责
2014/03/09 职场文书
村党支部群众路线教育实践活动对照检查材料
2014/09/26 职场文书
2015年乡镇党务公开工作总结
2015/05/19 职场文书
小程序自定义轮播图圆点组件
2022/06/25 Javascript