国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

vue全局組件與局部組件使用方法詳解

2019-11-19 14:05:15
字體:
供稿:網(wǎng)友

vue全局/局部注冊,以及一些混淆的組件

main.js入口文件的一些常用配置, 在入口文件上定義的public.vue為全局組件,在這里用的是pug模版 .wraper 的形式相當于<div class=wraper></div>

main.js文件

**main.js入口文件的內(nèi)容**import Vue from 'vue'import App from './App'import router from './router'// 引入公用組件的vue文件 他暴漏的是一個對象import cpublic from './components/public'Vue.config.productionTip = false// 注冊全局組件-要在vue的根事咧之前// 參數(shù) 1是標簽名字-string 2是對象 引入外部vue文件就相當與一個對象Vue.component('public', cpublic)// 正常注冊全局組件的時候,第二個參數(shù)應(yīng)該是對象。Vue.component('public1', { template: '<div>正常的組件模式</div>'})/* eslint-disable no-new */// 生成vue 的根實例;創(chuàng)建每個組件都會生成一個vue的事咧new Vue({ el: '#app', router, template: '<App/>', components: { App }})

public.vue 組件為定義的全局組件在任何組件里都可以直接使用,不需要在vue實例選項components上在次定義,也不需要再次導入文件路徑。

**public.vue的組件內(nèi)容**<template lang="pug">.wrapper slot(text="我是全局組件") {{name}}</template><script>export default { name: 'HelloWor', // 全局組件里data屬性必須是函數(shù),這樣才會獨立, // 在組件改變狀態(tài)的時候不會影響其他組件里公用的這個狀態(tài) 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 我是父組件的內(nèi)容  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將數(shù)據(jù)傳遞到子組件,并與v-model想對應(yīng)的輸入框相互綁定。   msg: '這個是父組件的-prop-數(shù)據(jù)'  } }, 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") 我是子組件的內(nèi)容 .name {{ msg }} {{ number }}</template><script>export default { name: 'HelloWor', // 接受的時候是用props接受,數(shù)組的形式,里面是字符串的形式。 // 也可以傳入普通的字符串 // 在子組件中,props接受到的狀態(tài)當作vue的實例屬性來使用 props: [ 'msg', 'number' ]}</script><style scoped></style>

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持武林網(wǎng)。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 阿巴嘎旗| 驻马店市| 彭州市| 明溪县| 青铜峡市| 乌拉特前旗| 若尔盖县| 彝良县| 新宾| 扬州市| 刚察县| 喀喇沁旗| 望城县| 沾益县| 巩留县| 九龙县| 金昌市| 库伦旗| 于田县| 柘城县| 建德市| 台中县| 昂仁县| 福建省| 涿鹿县| 黔西县| 赤城县| 昌都县| 文水县| 舞钢市| 海南省| 台北县| 华亭县| 西盟| 阳春市| 厦门市| 汉川市| 鄯善县| 赤峰市| 霍山县| 上蔡县|