第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

【九月打卡】第11天 Vue3框架

標(biāo)簽:
Vue.js

课程名称:2022持续升级 Vue3 从入门到实战 掌握完整知识体系

课程章节:第3章 探索组件的理念

主讲老师:Dell

课程内容:

今天学习的内容包括:

  • 组件间传值

  • 传值校验

  • 单向数据流

  • 编程练习

课程收获:

静态传值

定义全局子组件hello,在根组件中使用hello子组件,并且向子组件传值,子组件用props进行接收值并使用.简单但有限制,只能传来string类型


https://img1.sycdn.imooc.com//6322d20800014da406460440.jpg

https://img1.sycdn.imooc.com//6322d21300013ac406420178.jpg

动态传值

要在传值名称前加v-bind,简写:,灵活且类型不限制。 String,Boolean,Array......

https://img1.sycdn.imooc.com//6322d3f50001c89205630404.jpg

https://img1.sycdn.imooc.com//6322d4280001581d06050237.jpg

https://img1.sycdn.imooc.com//6322d41a0001d57c01500076.jpg

子组件接受的props接受可以为对象,并设置接收类型,如果类型不对在控制台会弹出警告提示

https://img1.sycdn.imooc.com//6322d58b000121c406150349.jpg

https://img1.sycdn.imooc.com//6322d57400016d5c12140221.jpg


可以把函数传递给子组件,然后通过子组件调用执行

https://img1.sycdn.imooc.com//6322d7a500018afb07100557.jpg

子组件要求父组件传值,父组件没有传值会在控制台报警告,

https://img1.sycdn.imooc.com//6322d8a20001ad8c06100479.jpg

https://img1.sycdn.imooc.com//6322d9240001dcd206670170.jpg


default默认置,如果父组件不传值会使用默认置

https://img1.sycdn.imooc.com//6322da4f00010ffd02010118.jpg

https://img1.sycdn.imooc.com//6322da630001535705410306.jpg

如果传值会显示传进来的值

https://img1.sycdn.imooc.com//6322dabf000106cc07310612.jpg

https://img1.sycdn.imooc.com//6322dadd0001160901980088.jpg

validator对传进来的参数做详细的校验,当判断结果不正确,值为false时,控制台会弹出警告.

https://img1.sycdn.imooc.com//6322dbcd00018aaf05090508.jpg

https://img1.sycdn.imooc.com//6322dbb50001fc3b10020289.jpg


编程练习

<script>

    const app = Vue.createApp({

      data() {

        return {

          num: 4560,

        }

      },

      template: `

        <hello :content="num"/>

      `

    })


    // 定义全局组件hello

    app.component('hello', {

      // type: String, Boolean, Number, Function, Object, Symbol, Array

      // required 必填

      // default 默认置

      props: {

        content: {

          type: Number,

          validator: function(value) {

            return value < 1000;

          },

          required: true, //必须传递内容

          default: function() {

            return 123;

          }

        },

      },

      template: `

        <div>{{content}}</div>

      `

    })


    const vm = app.mount('#root');

  </script>


如果传多个数据值,可以定义一个params的对象进行传值

https://img1.sycdn.imooc.com//6322dfaa00015c3f06430586.jpg

传参的时候html不支持驼峰的语法,会把它转译成小写字母,当我们传值的名字比较长可以用-横杠进行间隔,当子组件接受的时候可以用驼峰的命名去接收.

https://img1.sycdn.imooc.com//6322e1740001216605970488.jpg

单向数据流

    子组件可以使用父组件传过来的数据,但不能修改该数据。因为如果可以修改,在其他地方引用该数据也会因为改变而改变,会引起逻辑错误和混乱    

如果需要改变,可以自定义一个变量,让它的值等于传过来的值,修改自定义的值

https://img1.sycdn.imooc.com//6322e4800001e90507320116.jpg

https://img1.sycdn.imooc.com//6322e4180001e22707820490.jpg







总结

组件间传值:静态传值和动态传值

静态传值

  • 组件上写传值名称和要传的值,例如 content="123";

  • 子组件通过props接收, 例如:props: ['content'].  

  • 简单但有限制,只能传来string类型

动态传值

  • 要在传值名称前加v-bind,传的值是个变量; 例如:v-bind:content="message"(message变量在data中定义)

  • 子组件通过props接收。

  • 灵活且种类不限制。 String,Boolean,Array, Object, Function, Symbol都可以。


传值校验

  1. 只种类校验的话在 props: { content: Number }  直接写想要传的类型,如果传的不对页面依旧展示但是会警告

  2. type:校验类型

  •  default: 默认值(没有传值时,展示默认值,可以是函数)function() { ... }

  • required: bool值---true:必须有值

  • validator: function(value) { ... }    深度校验(value是传来的值)是否符合想要的特性

        例如:

            props: {  

                content: {

                    type: ...,  

                    required: ...,  

                    default: ...,

                    validator: function(value) { ... }

                }

             }

在 html 标签上的属性名称太长

        建议使用短横线(-)来连接单词(例如:<demo :data-abc="xxx" />),vue标签是不支持驼峰式的语法的。    

注意:子组件接收时要用驼峰式,(例如props:['dataAbc'])


单向数据流    

        子组件可以使用父组件传过来的数据,但不能修改该数据。因为如果可以修改,在其他地方引用该数据也会因为改变而改变,会引起逻辑错误和混乱    如果要改变,可以自定义一个变量,让它的值等于传过来的值,修改自定义的值


今天学习了组件传值,传值时的校验以及单向数据流等相关的内容今天也是收获满满的一天,希望能够每天学习一点点,一直坚持下,加油!         

點(diǎn)擊查看更多內(nèi)容
TA 點(diǎn)贊

若覺(jué)得本文不錯(cuò),就分享一下吧!

評(píng)論

作者其他優(yōu)質(zhì)文章

正在加載中
  • 推薦
  • 評(píng)論
  • 收藏
  • 共同學(xué)習(xí),寫(xiě)下你的評(píng)論
感謝您的支持,我會(huì)繼續(xù)努力的~
掃碼打賞,你說(shuō)多少就多少
贊賞金額會(huì)直接到老師賬戶(hù)
支付方式
打開(kāi)微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊(cè)有機(jī)會(huì)得

100積分直接送

付費(fèi)專(zhuān)欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會(huì)
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

舉報(bào)

0/150
提交
取消