那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Vue入門之組件的介紹

jf_78858299 ? 來源:CSDN ? 作者:一只楠喃 ? 2023-02-06 16:03 ? 次閱讀

7.組件

7.1什么是組件

組件是可復(fù)用的 Vue 實(shí)例,且?guī)в幸粋€名字

在大型應(yīng)用開發(fā)的時候,頁面可以劃分成很多部分。往往不同的頁面,也會有相同的部分。例如:頭部導(dǎo)航、尾部信息等模塊。
但是如果每個頁面都獨(dú)自開發(fā),這無疑增加了我們開發(fā)的成本。所以我們會把頁面的不同部分拆分成獨(dú)立的組件,然后在不同頁面就可以共享這些組件,避免重復(fù)開發(fā)。

7.2組件分類

組件的作用域分為兩種:全局組件 和 局部組件。

全局組件:在所有的Vue實(shí)例中都可以使用

局部組件:只有在注冊了組件的Vue實(shí)例中才可以使用

7.2.1全局組件

使用 Vue.component 定義的組件為全局組件,在所有的 Vue 實(shí)例中都可以使用。

比如以下代碼中定義了一個全局組件,這個組件在兩個Vue實(shí)例中都可以使用:

語法

Vue.component("",{

template: ``, // 定義html部分,要求有一個根標(biāo)簽

data() { // 定義數(shù)據(jù)部分

return {

}

},

})

data: function () {
    return {
      name: "jack"
    }
  }
})

//下面兩個實(shí)例都可以使用全局組件
new Vue({
  el: '#app1'
});

//下面兩個實(shí)例都可以使用全局組件
new Vue({
  el: '#app2'
});

7.2.2局部組件

局部組件是指只能在注冊了該組件的 Vue 實(shí)例中才可以使用。(先需要注冊才能用)

局部組件的定義只是定義一個組件對象:

局部組件的定義只是定義一個組件對象:

var 組件名 = { … }

在需要使用這個組件的Vue中注冊組件

const app = new Vue({

components:{

組件名:組件對象

}

})

局部組件使用實(shí)例:

var hello = {
  template: '
您好!現(xiàn)在是在使用子組件
'
, }; //下面兩個實(shí)例都可以使用全局組件 new Vue({ el: '#app1', components:{ "MyHello":hello } });

7.3組件自定義屬性

7.3.1什么是組件屬性?

什么是組件屬性?比如我們在使用img標(biāo)簽時, src就是屬性。如果我們把img看做一個組件的話,src就是這個組件的屬性。

總結(jié):組件屬性用于父組件向子組件傳遞數(shù)據(jù)。

7.3.2定義屬性

當(dāng)需要為組件設(shè)置屬性時,我們需要先在定義組件時使用 props 來設(shè)置這個組件上所有屬性的名字:

Vue.component(’…’,{

props:[屬性名字?jǐn)?shù)組]

})

定義了組件屬性之后,在組件中就可以像使用一個普通數(shù)據(jù)一樣使用屬性:

Vue.component('MyNav', {
  props: ['welcome'],
  template: '
歡迎您,游客! {{welcome}}
'
}) //下面兩個實(shí)例都可以使用全局組件 new Vue({ el: '#app1' });

7.3.4組件事件

  • 1)原生事件

    當(dāng)需要在組件上綁定 JS 中原生的事件時,必須要添加 .native 修飾符,否則該事件是無法觸發(fā)的。

    您好

Vue.component('MyNav', {
  props: ['welcome'],
  template: ''
})
//下面兩個實(shí)例都可以使用全局組件
new Vue({
  el: '#app1',
  data:{
    txt:"綁定數(shù)據(jù)到屬性"
  },
  methods:{
    hello:function(){
      alert("組件事件");
    }
  }
});
  • 2 自定義事件

    除了原生的事件外,還可以為組件添加自定義的事件,通過自定義的事件,子組件可以向父組件傳遞消息

在這里插入圖片描述

  • 在組件中我們可以使用 emit 觸發(fā)一個事件,這個事件的名字是我們自己定義的

    定義方法如下:聲明事件名稱

    this.$emit('事件名')

    在使用這個組件時,就可以為這個新的事件名綁定一個事件:

    或者:

    在這里插入圖片描述

//下面兩個實(shí)例都可以使用全局組件
new Vue({
  el: '#app1',
  methods: {
    todo: function () {
      console.log('todo組件中發(fā)表了新的todo')
    }
  }
});

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 開發(fā)
    +關(guān)注

    關(guān)注

    0

    文章

    370

    瀏覽量

    40917
  • 組件
    +關(guān)注

    關(guān)注

    1

    文章

    517

    瀏覽量

    17922
  • vue
    vue
    +關(guān)注

    關(guān)注

    0

    文章

    58

    瀏覽量

    7894
收藏 人收藏

    評論

    相關(guān)推薦

    Proteus基礎(chǔ)入門教程 Proteus界面功能介紹及常用操作

    Proteus基礎(chǔ)入門教程 Proteus界面功能介紹及常用操作
    發(fā)表于 09-27 22:35

    Linux搭建Vue開發(fā)環(huán)境

    本文介紹在Linux環(huán)境下從零開始搭建Vue開發(fā)環(huán)境的整個過程,包括vue的安裝,webstorm 安裝配置,devtools的安裝。
    發(fā)表于 07-24 06:20

    vue插槽是什么

    vue踩坑插槽理解(slot)
    發(fā)表于 08-14 14:12

    vue組件mounted生命周期鉤子函數(shù)的用法

    vue組件mounted生命周期開發(fā)疑惑解答
    發(fā)表于 11-11 09:24

    vue中會用的插件介紹

    vue:相關(guān)插件介紹
    發(fā)表于 03-17 11:30

    VUE組件回到頂部

    VUE組件 - 回到頂部
    發(fā)表于 05-26 13:54

    Vue中父組件與子組件之間的數(shù)據(jù)傳遞

    Vue中父組件vue實(shí)例)與子組件(component)之間的數(shù)據(jù)傳遞
    發(fā)表于 06-01 17:28

    基于TypeScript實(shí)現(xiàn)Vue3.0指令組件拖拽

    最近在用vue3重構(gòu)后臺的一個功能。一個彈窗組件,彈出一個表單。然后點(diǎn)擊提交。早上運(yùn)維突然跑過來問我,為啥彈窗擋住了下邊的表格的數(shù)據(jù),我添加的時候,都沒法對照表格來看了。你必須給我解決一下。我參考了
    發(fā)表于 11-04 06:58

    vue全局變量的設(shè)置與在組件中修改全局變量的方法?

    vue全局變量的設(shè)置與在組件中修改全局變量的方法
    發(fā)表于 11-06 06:43

    關(guān)于vue如何去水印的解決方法的介紹

    很多人都懂一些簡單的電腦系統(tǒng)問題的解決方案,但是vue怎么去水印的解決思路卻鮮為人知,小編前幾天就遇到了vue怎么去水印的問題,于是準(zhǔn)備整理一些vue怎么去水印的解決思路,其實(shí)只需要按照1:打開
    發(fā)表于 03-24 17:33 ?3448次閱讀

    華為開發(fā)者HarmonyOS零基礎(chǔ)入門:UI組件設(shè)計(jì)開發(fā)實(shí)踐

    華為開發(fā)者HarmonyOS零基礎(chǔ)入門:UI組件設(shè)計(jì)開發(fā)實(shí)踐圖庫應(yīng)用介紹,應(yīng)用數(shù)據(jù)加載顯示模型圖片加載渲染功能快速在其他應(yīng)用上。
    的頭像 發(fā)表于 10-23 10:58 ?1714次閱讀
    華為開發(fā)者HarmonyOS零基礎(chǔ)<b class='flag-5'>入門</b>:UI<b class='flag-5'>組件</b>設(shè)計(jì)開發(fā)實(shí)踐

    Vue入門Vue的生命周期

    .生命周期 4.1生命周期是什么 Vue的生命周期, 就是Vue實(shí)例從創(chuàng)建到銷毀的過程.
    的頭像 發(fā)表于 02-06 16:16 ?892次閱讀
    <b class='flag-5'>Vue</b><b class='flag-5'>入門</b><b class='flag-5'>Vue</b>的生命周期

    Vue入門之事件操作

    事件修飾符 vue 通過事件修飾符對js事件進(jìn)行細(xì)節(jié)控制。
    的頭像 發(fā)表于 02-06 16:26 ?731次閱讀
    <b class='flag-5'>Vue</b><b class='flag-5'>入門</b>之事件操作

    Vue入門Vue定義

    Vue (讀音 /vju?/,類似于 view) 是一套用于構(gòu)建用戶界面的漸進(jìn)式JavaScript框架。 Vue 的核心庫只關(guān)注視圖層,也就是只處理頁面。 Vue提供的一套JS框架,通常稱為
    的頭像 發(fā)表于 02-06 16:41 ?1122次閱讀
    <b class='flag-5'>Vue</b><b class='flag-5'>入門</b><b class='flag-5'>之</b><b class='flag-5'>Vue</b>定義

    簡單介紹一下Vue中的響應(yīng)式原理

    自從 Vue 發(fā)布以來,就受到了廣大開發(fā)人員的青睞,提到 Vue,我們首先想到的就是 Vue 的響應(yīng)式系統(tǒng),那響應(yīng)式系統(tǒng)到底是怎么回事呢?
    的頭像 發(fā)表于 03-13 10:11 ?792次閱讀
    貔喜脉动棋牌下载| 青冈县| 蓝盾百家乐官网代理| 怎么赢百家乐的玩法技巧和规则 | 百家乐官网赌博怎么玩| 百家乐庄不连的概率| 大发888充值100元| 百家乐官网也能赢钱么| 子山午向的房子24山图| 星空棋牌舟山下载| 悦榕庄百家乐官网的玩法技巧和规则 | 百家乐官网筹码套装| 百家乐网哪一家做的最好呀| 淳安县| 百家乐长龙如何判断| 六合彩图片| 百家乐压钱技巧| 富蕴县| 百家乐走势图解| 现金百家乐官网人气最高| 破解百家乐真人游戏| 凯旋门百家乐官网技巧| 破战百家乐的玩法技巧和规则 | 利博国际娱乐| 百家乐辅助工具| 西宁市| 闲和庄百家乐娱乐平台| 单机百家乐官网棋牌| 玩百家乐必赢的心法| 新全讯网3| 新时代百家乐官网的玩法技巧和规则 | 百家乐官网平台哪个好本站所有数据都是网友推荐及提供 | 真人百家乐官网赌法| 旅百家乐赢钱律| 百家乐官网桌布| 大发888相关资讯| 真人百家乐官网蓝盾娱乐平台 | 最好的百家乐官网娱乐场| 水果机遥控| 法拉利百家乐官网的玩法技巧和规则| 推二八杠技巧|