vue全局组件与局部组件使用方法详解


Posted in Javascript onMarch 29, 2018

vue全局/局部注册,以及一些混淆的组件

main.js入口文件的一些常用配置, 在入口文件上定义的public.vue为全局组件,在这里用的是pug模版 .wraper 的形式相当于<div class=wraper></div>

main.js文件

**main.js入口文件的内容**

import Vue from 'vue'
import App from './App'
import router from './router'
// 引入公用组件的vue文件 他暴漏的是一个对象
import cpublic from './components/public'

Vue.config.productionTip = false

// 注册全局组件-要在vue的根事咧之前
// 参数 1是标签名字-string 2是对象 引入外部vue文件就相当与一个对象
Vue.component('public', cpublic)
// 正常注册全局组件的时候,第二个参数应该是对象。
Vue.component('public1', {
 template: '<div>正常的组件模式</div>'
})
/* eslint-disable no-new */
// 生成vue 的根实例;创建每个组件都会生成一个vue的事咧
new Vue({
 el: '#app',
 router,
 template: '<App/>',
 components: { App }
})

public.vue 组件为定义的全局组件在任何组件里都可以直接使用,不需要在vue实例选项components上在次定义,也不需要再次导入文件路径。

**public.vue的组件内容**


<template lang="pug">
.wrapper
 slot(text="我是全局组件") {{name}}

</template>

<script>
export default {
 name: 'HelloWor',
 // 全局组件里data属性必须是函数,这样才会独立,
 // 在组件改变状态的时候不会影响其他组件里公用的这个状态
 data () {
  return {
   name: '我是全局组件'
  }
 }
}
</script>

<style scoped>

</style>

parent.vue组件里,用到了public全局组件以及其他的子组件

parent.vue组件

<template lang="pug">
.wrap
 .input-hd
  .title 名称:
  input.input(type="text",v-model="msg",placeholder="请输入正确的值",style="outline:none;")
 .content-detail
  .content-name 我是父组件的内容 
 children(:msg='msg', number='1')
 public
 router-link(to='/parent/children2') 第二个子组件
 router-view
</template>

<script>
import children from './children'
// children(:msg='msg', number='1')在组件里 也可以传递自定义的属性,但是是字符串类型,

export default {
 name: 'HelloWor',
 data () {
  return {
   // 通过prop将数据传递到子组件,并与v-model想对应的输入框相互绑定。
   msg: '这个是父组件的-prop-数据'
  }
 },
 components: {
  children
 }
}
</script>

<style scoped>
.wrap {
}
.input-hd {
 display: flex;
 flex-direction: row;
 align-items: center;
 height: 70px;
}
</style>

children.vue是parent.vue的子组件,但是只在parent.vue作用域里可用

<template lang="pug">
.wrapper
 slot(text="我是子组件的text") 我是子组件的内容
 .name {{ msg }} {{ number }}
</template>

<script>
export default {
 name: 'HelloWor',
 // 接受的时候是用props接受,数组的形式,里面是字符串的形式。
 // 也可以传入普通的字符串
 // 在子组件中,props接受到的状态当作vue的实例属性来使用
 props: [ 'msg', 'number' ]
}
</script>

<style scoped>

</style>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js confirm()方法的使用方法实例
Jul 13 Javascript
[JSF]使用DataModel处理表行事件的实例代码
Aug 05 Javascript
jqGrid增加时--判断开始日期与结束日期(实例解析)
Nov 08 Javascript
js简单实现用户注册信息的校验代码
Nov 15 Javascript
js实现局部页面打印预览原理及示例代码
Jul 03 Javascript
JavaScript中的this到底是什么(一)
Dec 09 Javascript
javascript监听页面刷新和页面关闭事件方法详解
Jan 09 Javascript
在Vue中使用echarts的实例代码(3种图)
Jul 10 Javascript
JS中获取 DOM 元素的绝对位置实例详解
Apr 23 Javascript
JavaScript创建防篡改对象的方法分析
Dec 30 Javascript
通过原生vue添加滚动加载更多功能
Nov 21 Javascript
解决vue页面刷新,数据丢失的问题
Nov 24 Vue.js
javascript实现文件拖拽事件
Mar 29 #Javascript
vue 父组件调用子组件方法及事件
Mar 29 #Javascript
vue.js element-ui tree树形控件改iview的方法
Mar 29 #Javascript
Vue 源码分析之 Observer实现过程
Mar 29 #Javascript
vue 实现全选全不选的示例代码
Mar 29 #Javascript
Angular开发实践之服务端渲染
Mar 29 #Javascript
使用vue2实现购物车和地址选配功能
Mar 29 #Javascript
You might like
PHP中冒号、endif、endwhile、endfor使用介绍
2010/04/28 PHP
php获取域名的google收录示例
2014/03/24 PHP
PHP数组遍历知识汇总(包含遍历方法、数组指针操作函数、数组遍历测速)
2014/07/05 PHP
PHP实现一维数组转二维数组的方法
2015/02/25 PHP
extjs 列表框(multiselect)的动态添加列表项的方法
2009/07/31 Javascript
jquery实现文字由下到上循环滚动的实例代码
2013/08/09 Javascript
js中数组Array的一些常用方法总结
2013/08/12 Javascript
Javascript学习笔记之相等符号与严格相等符号
2014/11/23 Javascript
Javascript模块化编程详解
2014/12/01 Javascript
浅谈Sizzle的“编译原理”
2015/04/14 Javascript
浅谈String.valueOf()方法的使用
2016/06/06 Javascript
bootstrap模态框实现拖拽效果
2016/12/14 Javascript
jQuery鼠标悬停内容动画切换效果
2017/04/27 jQuery
JS实现简单获取最近7天和最近3天日期的方法
2018/04/18 Javascript
详解使用mocha对webpack打包的项目进行&quot;冒烟测试&quot;的大致流程
2020/04/27 Javascript
解决uWSGI的编码问题详解
2017/03/24 Python
详解python tkinter教程-事件绑定
2019/03/28 Python
一个可以套路别人的python小程序实例代码
2019/04/09 Python
Python动态导入模块和反射机制详解
2020/02/18 Python
Pytorch数据拼接与拆分操作实现图解
2020/04/30 Python
Python Tornado实现WEB服务器Socket服务器共存并实现交互的方法
2020/05/26 Python
tensorflow2.0教程之Keras快速入门
2021/02/20 Python
CSS3 translate导致字体模糊的实例代码
2019/08/30 HTML / CSS
Marmot土拨鼠官网:美国专业户外运动品牌
2018/01/11 全球购物
英语专业学子个人的自我评价
2013/10/02 职场文书
业务主管岗位职责范本
2013/12/25 职场文书
2014年上半年工作自我评价
2014/01/18 职场文书
房地产项目建议书
2014/03/12 职场文书
2014两会优秀的心得体会范文
2014/03/17 职场文书
2014年教学工作总结
2014/11/13 职场文书
毕业设计指导教师评语
2014/12/30 职场文书
财务经理岗位职责
2015/01/31 职场文书
民事申诉状范本
2015/05/20 职场文书
2015年暑期见闻
2015/07/14 职场文书
优秀党员主要事迹材料
2015/11/04 职场文书
golang如何去除多余空白字符(含制表符)
2021/04/25 Golang