2022-02-13

ref屬性

  1. 被用來給元素或子組件注冊引用信息(id的替代者)
  2. 應(yīng)用在html標簽上獲取的是真實DOM元素,應(yīng)用在組件標簽上是組件實例對象(vc)
  3. 使用方式:
    1. 打標識:<h1 ref="xxx">.....</h1><School ref="xxx"></School>
    2. 獲?。?code>this.$refs.xxx

props配置項

  1. 功能:讓組件接收外部傳過來的數(shù)據(jù)

  2. 傳遞數(shù)據(jù):<Demo name="xxx"/>

  3. 接收數(shù)據(jù):

    1. 第一種方式(只接收):props:['name']

    2. 第二種方式(限制類型):props:{name:String}

    3. 第三種方式(限制類型、限制必要性、指定默認值):

      props:{
          name:{
          type:String, //類型
          required:true, //必要性
          default:'老王' //默認值
          }
      }
      

    備注:props是只讀的,Vue底層會監(jiān)測你對props的修改,如果進行了修改,就會發(fā)出警告,若業(yè)務(wù)需求確實需要修改,那么請復(fù)制props的內(nèi)容到data中一份,然后去修改data中的數(shù)據(jù)。

mixin(混入)

  1. 功能:可以把多個組件共用的配置提取成一個混入對象

  2. 使用方式:

    第一步定義混合:

    {
        data(){....},
        methods:{....}
        ....
    }
    

    第二步使用混入:

     全局混入:```Vue.mixin(xxx)```
     局部混入:```mixins:['xxx']  ```
    

插件

  1. 功能:用于增強Vue

  2. 本質(zhì):包含install方法的一個對象,install的第一個參數(shù)是Vue,第二個以后的參數(shù)是插件使用者傳遞的數(shù)據(jù)。

  3. 定義插件:

    對象.install = function (Vue, options) {
        // 1. 添加全局過濾器
        Vue.filter(....)
    
        // 2. 添加全局指令
        Vue.directive(....)
    
        // 3. 配置全局混入(合)
        Vue.mixin(....)
    
        // 4. 添加實例方法
        Vue.prototype.$myMethod = function () {...}
        Vue.prototype.$myProperty = xxxx
    }
    
  4. 使用插件:Vue.use()

scoped樣式

  1. 作用:讓樣式在局部生效,防止沖突。
  2. 寫法:<style scoped>

總結(jié)TodoList案例

  1. 組件化編碼流程:

     (1).拆分靜態(tài)組件:組件要按照功能點拆分,命名不要與html元素沖突。
    
     (2).實現(xiàn)動態(tài)組件:考慮好數(shù)據(jù)的存放位置,數(shù)據(jù)是一個組件在用,還是一些組件在用:
    
             1).一個組件在用:放在組件自身即可。
    
             2). 一些組件在用:放在他們共同的父組件上(<span style="color:red">狀態(tài)提升</span>)。
    
     (3).實現(xiàn)交互:從綁定事件開始。
    
  2. props適用于:

     (1).父組件 ==> 子組件 通信
    
     (2).子組件 ==> 父組件 通信(要求父先給子一個函數(shù))
    
  3. 使用v-model時要切記:v-model綁定的值不能是props傳過來的值,因為props是不可以修改的!

  4. props傳過來的若是對象類型的值,修改對象中的屬性時Vue不會報錯,但不推薦這樣做。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 筆記 腳手架文件結(jié)構(gòu) 關(guān)于不同版本的Vue vue.js與vue.runtime.xxx.js的區(qū)別:vue.js...
    sskingfly閱讀 170評論 0 0
  • 筆記 腳手架文件結(jié)構(gòu) ├── node_modules ├── public │ ├── favicon.ico...
    關(guān)航_強化班閱讀 296評論 0 0
  • vue2筆記 腳手架文件結(jié)構(gòu) ├── node_modules ├── public │ ├── favico...
    Daydream_許多閱讀 216評論 0 0
  • ref屬性 1、被用來給元素或子組件注冊引用信息(id的替代者) 2、應(yīng)用在html標簽上獲取的是真實DO...
    卑微小李學前端閱讀 1,237評論 0 17
  • 鏈接:https://cn.vuejs.org/v2/api/#Vue-filter API TPshop中國免費...
    zz云飛揚閱讀 530評論 0 0

友情鏈接更多精彩內(nèi)容