最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Vue 組件的掛載與父子組件的傳值實(shí)例

 更新時(shí)間:2020年09月02日 15:41:44   作者:愛(ài)學(xué)習(xí)的小發(fā)發(fā)  
這篇文章主要介紹了Vue 組件的掛載與父子組件的傳值實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

1:將需要掛載的組件放置在component之中

2:全局掛載在main.js之中

import Vue from 'vue'
import App from './App.vue'
import getTime from './component/child/getTime'

//全局注冊(cè) 整個(gè)項(xiàng)目的組件都可以使用
//注冊(cè)給整個(gè)vue 對(duì)象
//引入需要注冊(cè)的全局組件

//在vue類(lèi)的方法 component里面進(jìn)行注冊(cè)
Vue.component('v-times',getTime);
Vue.component('v-times',{
 template:"<div>{{msg}}</div>",//字符串的標(biāo)簽?zāi)0?
 data(){ //當(dāng)前模板的數(shù)據(jù)
  return {
   msg:"時(shí)間"
  }
 }
});
new Vue({
 el: '#app',
 render: h => h(App)
})

3:局部掛載至當(dāng)前父組件之內(nèi)

<script>
//組件在誰(shuí)里面使用 在誰(shuí)里面注冊(cè) 這種注冊(cè)方式叫做局部注冊(cè)
//局部注冊(cè)只能在父組件里使用
import topTitle from "./component/systemtoptitle";
import leftMenu from "./component/systemleftmenu";
import rightContent from "./component/systemrightcontent";
//注冊(cè)組件
//注冊(cè)完成之后使用組件
export default {
 name: "app",
 components: {
  //注冊(cè)
  //常規(guī)寫(xiě)法鍵值寫(xiě)法
  "v-toptitle": topTitle,
  "v-leftmenu": leftMenu,
  "v-rightcontent": rightContent
  //簡(jiǎn)單寫(xiě) topTitle leftMenu rightContent
 },
 data() {
  return {};
 }
};
</script>

4:父組件傳值給子組件

父組件:

<template>
 <div id="toptitle">
  <!--logo子組件是toptitle的子組件-->
  <!--子組件接收值-->
  <v-logo :sysname="name"></v-logo>
 </div>
</template>
<script>
import logo from './child/logo'
export default{
 name:"toptitle ",
 components:{
  'v-logo':logo
 },
 data(){
  return {
   //比如下面的兩個(gè)信息是后臺(tái)返回的
   name:"學(xué)生信息管理",
   logo:"src/assets/logo.png"
  }
 }
}
</script>

子組件:

<template>
 <div id="logoinfo">
  <!--注意此處為:src-->
  <img class="logoimg" :src="logoimg" alt=""/>
  <span class="systemname">{{sysname}}</span>
 </div>
</template>
<script>
export default {
 //子組件調(diào)用父組件的值
 //1 簡(jiǎn)單寫(xiě)法
 //2 約束數(shù)據(jù)類(lèi)型的寫(xiě)法 如果數(shù)據(jù)類(lèi)型不一致 會(huì)報(bào)警告
 //3 如果父組件沒(méi)有傳值 走默認(rèn)值
 name: "logoinfo",
 //props: ["logo", "sysname"],
 /* props:{
   'logoimg':String,
   'sysname':String
 }, */
 props:{
   'logoimg':{
     type:String,
     default:"src/assets/wanmou.jpg"
   },
   'sysname':String
 },
 data() {
  return {
   //子組件定義props屬性接收父組件傳遞的數(shù)據(jù)
  };
 }
};
</script>

5:子組件調(diào)用父組件的值

子組件:

<template>
 <div id="logoinfo">
  <!--注意此處為:src-->
  <img class="logoimg" :src="logoimg" alt=""/>
  <span class="systemname">{{sysname}}</span>
 </div>
</template>
<script>
export default {
 //子組件調(diào)用父組件的值
 //1 簡(jiǎn)單寫(xiě)法
 //2 約束數(shù)據(jù)類(lèi)型的寫(xiě)法 如果數(shù)據(jù)類(lèi)型不一致 會(huì)報(bào)警告
 //3 如果父組件沒(méi)有傳值 走默認(rèn)值
 name: "logoinfo",
 //props: ["logo", "sysname"],
 /* props:{
   'logoimg':String,
   'sysname':String
 }, */
 props:{
   logoimg:{
     type:String,
     default:"src/assets/wanmou.jpg"
   },
   sysname:String,
   parentinfo:Object
 },
 mounted() {
  //1 在子組件里獲取整個(gè)父組件
  //子組件執(zhí)行父組件的函數(shù)
  //let parent=this.parentinfo;
  //parent.childsend();

  //2 子組件獲取父組件 內(nèi)置方法
  let parentdata=this.$parent;
  console.log(parentdata);
 },
 data() {
  return {
   //子組件定義props屬性接收父組件傳遞的數(shù)據(jù)
  };
 },
 methods: {
  sendmsg(){
   console.log("子組件函數(shù)");
  }
 }
}
</script>

父組件:

<template>
 <div id="toptitle">
  <!--logo子組件是toptitle的子組件  
  //父組件獲取子組件的所有內(nèi)容
  //使用ref獲取虛擬的dom來(lái)獲取子組件
  -->
  <!--子組件接收值-->
  <v-logo :parentinfo="this" ref="logolist" :sysname="name"></v-logo>
 </div>
</template>
<script>
import logo from './child/logo'
export default{
 name:"toptitle",
 components:{
  'v-logo':logo
 },
 mounted() {
  //組件掛載完的執(zhí)行函數(shù)
  let logoinfo=this.$refs.logolist;
  //獲取到的是整個(gè)子組件 父組件里面執(zhí)行子組件的方法
  logoinfo.sendmsg();
 },
 data(){
  return {
   //比如下面的兩個(gè)信息是后臺(tái)返回的
   name:"學(xué)生信息管理",
   logo:"src/assets/logo.png"
  }
 },
 methods: {
  childsend(){
   console.log("父組件里面的函數(shù)");
  }
 }
}
</script>

補(bǔ)充知識(shí):vue-router中的組件怎么傳遞參數(shù)

第一種方法params

 {
   path: '/user/:userid',
   component: User
  },
<template>
<div>
<h2>{{userid}}</h2> // 
<h3>{{this.$route.params}}</h3>
</div>
</template>
<router-link :to='/user/+userid' tag="button">用戶(hù)</router-link>
<router-view></router-view>

export default {
 name: 'App',
 data() {
  return {
   userid: 'lisi'
  }
 }
}

第二種 query

 {
   path: '/profile',
   component: Profile
  }
<template>
<div>
<h2>我是Profile</h2>
<h3>{{this.$route.query}}</h3>
</div>
</template>
<router-link :to="{path: '/profile', query: {
   name: 'hylls',
   age: 20,
   height: 1.77
  }}" tag="button">profile</router-link>
  <router-view></router-view>

以上這篇Vue 組件的掛載與父子組件的傳值實(shí)例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Vue3實(shí)現(xiàn)密碼加密登錄的示例代碼

    Vue3實(shí)現(xiàn)密碼加密登錄的示例代碼

    現(xiàn)在,很多登陸表單都會(huì)使用密碼加密,為登錄安全,登錄表單輸入密碼,會(huì)加密后傳入后臺(tái),本文就來(lái)介紹一下Vue3實(shí)現(xiàn)密碼加密登錄的示例代碼,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-02-02
  • Vue2.x通用編輯組件的封裝及應(yīng)用詳解

    Vue2.x通用編輯組件的封裝及應(yīng)用詳解

    這篇文章主要為大家詳細(xì)介紹了Vue2.x通用編輯組件的封裝及應(yīng)用,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-05-05
  • vue3實(shí)現(xiàn)在新標(biāo)簽中打開(kāi)指定網(wǎng)址的方法

    vue3實(shí)現(xiàn)在新標(biāo)簽中打開(kāi)指定網(wǎng)址的方法

    我希望點(diǎn)擊查看按鈕的時(shí)候,能夠在新的標(biāo)簽頁(yè)面打開(kāi)這個(gè)文件的地址進(jìn)行預(yù)覽,該如何實(shí)現(xiàn)呢,下面小編給大家?guī)?lái)了基于vue3實(shí)現(xiàn)在新標(biāo)簽中打開(kāi)指定的網(wǎng)址,感興趣的朋友跟隨小編一起看看吧
    2024-07-07
  • 基于vue2的table分頁(yè)組件實(shí)現(xiàn)方法

    基于vue2的table分頁(yè)組件實(shí)現(xiàn)方法

    這篇文章主要為大家詳細(xì)介紹了基于vue2的table分頁(yè)組件實(shí)現(xiàn)方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-03-03
  • Vue登錄頁(yè)面的動(dòng)態(tài)粒子背景插件實(shí)現(xiàn)

    Vue登錄頁(yè)面的動(dòng)態(tài)粒子背景插件實(shí)現(xiàn)

    本文主要介紹了Vue登錄頁(yè)面的動(dòng)態(tài)粒子背景插件實(shí)現(xiàn),將登錄組件背景設(shè)置為 "粒子背景",具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-07-07
  • 深入解析Vue的自定義指令

    深入解析Vue的自定義指令

    這篇文章主要介紹了深入解析Vue的自定義指令,自定義指令主要是為了重用涉及普通元素的底層 DOM 訪(fǎng)問(wèn)的邏輯,一個(gè)自定義指令由一個(gè)包含類(lèi)似組件生命周期鉤子的對(duì)象來(lái)定義,需要的朋友可以參考下
    2023-05-05
  • Vue實(shí)現(xiàn)瀏覽器端掃碼功能

    Vue實(shí)現(xiàn)瀏覽器端掃碼功能

    本文主要介紹,通過(guò)使用基于 vue技術(shù)棧的前端開(kāi)發(fā)技術(shù),在瀏覽器端調(diào)起攝像頭,并進(jìn)行掃碼識(shí)別功能,對(duì)識(shí)別到的二維碼進(jìn)行跳轉(zhuǎn)或其他操作處理,對(duì)vue瀏覽器掃碼功能的實(shí)現(xiàn)代碼感興趣的朋友一起看看吧
    2021-10-10
  • 基于vue2框架的機(jī)器人自動(dòng)回復(fù)mini-project實(shí)例代碼

    基于vue2框架的機(jī)器人自動(dòng)回復(fù)mini-project實(shí)例代碼

    本篇文章主要介紹了基于vue2框架的機(jī)器人自動(dòng)回復(fù)mini-project實(shí)例代碼,具有一定的參考價(jià)值,有興趣的可以了解一下
    2017-06-06
  • 解決Vue打包后訪(fǎng)問(wèn)圖片/圖標(biāo)不顯示的問(wèn)題

    解決Vue打包后訪(fǎng)問(wèn)圖片/圖標(biāo)不顯示的問(wèn)題

    這篇文章主要介紹了 解決Vue打包后訪(fǎng)問(wèn)圖片/圖標(biāo)不顯示的問(wèn)題,本文給大家介紹的非常詳細(xì),具有一定的參考解決價(jià)值,需要的朋友可以參考下
    2019-07-07
  • Vue項(xiàng)目中封裝組件的簡(jiǎn)單步驟記錄

    Vue項(xiàng)目中封裝組件的簡(jiǎn)單步驟記錄

    眾所周知組件(component)是vue.js最強(qiáng)大的功能之一,它可以實(shí)現(xiàn)功能的復(fù)用,以及對(duì)其他邏輯的解耦,下面這篇文章主要給大家介紹了關(guān)于Vue項(xiàng)目中封裝組件的相關(guān)資料,需要的朋友可以參考下
    2021-09-09

最新評(píng)論

大方县| 玉树县| 溧阳市| 遂宁市| 夹江县| 冷水江市| 建瓯市| 驻马店市| 沙雅县| 永安市| 砚山县| 巴南区| 方山县| 柳河县| 沁阳市| 广东省| 晴隆县| 云龙县| 苏州市| 潞城市| 叶城县| 桃园市| 原阳县| 新乡县| 桃江县| 潮州市| 麦盖提县| 务川| 永和县| 卢湾区| 嵊泗县| 溧水县| 介休市| 边坝县| 洛阳市| 海南省| 垣曲县| 抚宁县| 四会市| 灵山县| 集贤县|