返回顶部
首页 > 资讯 > 精选 >VUE3的Non-Props属性怎么用
  • 355
分享到

VUE3的Non-Props属性怎么用

2023-06-28 23:06:47 355人浏览 独家记忆
摘要

本篇内容介绍了“vue3的Non-Props属性怎么用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1. 概述墨菲定律告诉我们:人总是容易犯

本篇内容介绍了“vue3的Non-Props属性怎么用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

    1. 概述

    墨菲定律告诉我们:人总是容易犯错误的,无论科技发展到什么程度,无论是什么身份的人,错误总是会在不经意间发生。因此我们最好在做重要的事情时,尽量去预估所有可能发生的错误,并思考错误发生后的补救方案,再准备一个或多个备选方案。这样才能做到有备无患,防患于未来。

    言归正传,之前我们聊了组件的传参,今天我们来聊一下Non-Props 属性,Non-Props 这个词,不了解的同学一定觉得很高深,其实很简单,之前讲的组件传参,子组件会使用 props:[''] 的方式接收父组件传递的参数,如果子组件不使用props:['']接收参数,那这个参数就是一个Non-Props 属性。下面我们通过例子来详细看一下。

    2.Non-Props 属性

    2.1 初识Non-Props 属性

    <body>    <div id="myDiv"></div></body><script>    const app = Vue.createApp({        template:`            <div>                <test message="hello" />            </div>        `    });    app.component("test", {        template:`            <div>123</div>        `    });    const vm = app.mount("#myDiv");

    这个例子中,虽然主组件在使用 test 子组件时,传了 message 参数,但子组件没有接收,会发生什么事情,看下面截图:

    VUE3的Non-Props属性怎么用

    最后渲染时,把 message = "hello" 原封不动的渲染到了 test 子组件的最外层标签上

    2.2 不想把Non-Props 属性 渲染到最外层标签

    我们希望我不接收的属性,就是不接收,不要渲染到最外层标签

    app.component("test", {        inheritAttrs:false,          template:`            <div>123</div>        `    });

    在子组件中增加属性inheritAttrs:false,Non-Props 属性就不会渲染到最外层标签了

    VUE3的Non-Props属性怎么用

    2.3Non-Props 属性的使用场景

    大家可能会问,这个属性子组件不需要,VUE 还硬放到子组件的最外层元素,这是为什么,有什么用呢,我们来看下面的例子

    const app = Vue.createApp({        template:`            <div>                <test  />            </div>        `    });    app.component("test", {        template:`            <div>123</div>        `    });

    VUE3的Non-Props属性怎么用

    VUE3的Non-Props属性怎么用

    从这个例子就能看出,当父组件想为子组件添加样式时,使用Non-Props 属性 就非常合适,也适合于其他单纯传递属性的场景。

    2.4 子组件有多个最外层标签

    刚才讲了,Non-Props 属性 会往子组件最外层的标签渲染属性,当子组件有多个最外层标签时,VUE 会如何渲染呢,看下面的例子

    const app = Vue.createApp({        template:`            <div>                <test  class="myClass" />            </div>        `    });    app.component("test", {        template:`            <div>123</div>            <div>456</div>            <div>789</div>        `    });

    VUE3的Non-Props属性怎么用

    三个最外层标签都没有父组件传递的属性,VUE 不知道该给哪个标签渲染,干脆就不渲染了

    2.5 为某个最外层标签渲染

    如果我们希望某个标签可以拿到父组件的属性,可以这样写

    const app = Vue.createApp({        template:`            <div>                <test  class="myClass" />            </div>        `    });    app.component("test", {        template:`            <div>123</div>            <div v-bind="$attrs" >456</div>            <div>789</div>        `    });

    VUE3的Non-Props属性怎么用

    使用 v-bind="$attrs",让 VUE 知道这个标签需要父组件的属性

    2.6 获取父组件传递的某一个属性

    上面的例子,子组件中间的 div 标签被渲染了父组件传递的所有属性,如果这个标签只需要的其中一个或几个属性,可以这么写

    const app = Vue.createApp({        template:`            <div>                <test  class="myClass" />            </div>        `    });    app.component("test", {        template:`            <div>123</div>            <div : >456</div>            <div>789</div>        `    });

    VUE3的Non-Props属性怎么用

    这样,中间的 div 只被渲染了 style 属性,而没有 class 属性

    2.7 生命周期函数获取Non-Props 属性

    子组件的生命周期函数,也是可以获取Non-Props 属性的,我们来看下面的例子

    app.component("test", {        mounted() {            console.info(this.$attrs.class);        },        template:`            <div>123</div>            <div : >456</div>            <div>789</div>        `    });

    VUE3的Non-Props属性怎么用

    “VUE3的Non-Props属性怎么用”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

    --结束END--

    本文标题: VUE3的Non-Props属性怎么用

    本文链接: https://lsjlt.com/news/321178.html(转载时请注明来源链接)

    有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

    猜你喜欢
    • VUE3的Non-Props属性怎么用
      本篇内容介绍了“VUE3的Non-Props属性怎么用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1. 概述墨菲定律告诉我们:人总是容易犯...
      99+
      2023-06-28
    • VUE3之Non-Props属性的具体使用
      目录1. 概述2.Non-Props 属性2.1 初识Non-Props 属性2.2 不想把Non-Props 属性 渲染到最外层标签2.3Non-Props 属性的使用场景2.4 ...
      99+
      2024-04-02
    • React三大属性之props怎么用
      这篇文章主要介绍React三大属性之props怎么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!props功能在于组件间通信(父子组件),首先说说在各种组件中的用法:类组件//父组件传值class Fat...
      99+
      2023-06-14
    • Vue3中props和emit怎么使用
      这篇文章主要介绍“Vue3中props和emit怎么使用”,在日常操作中,相信很多人在Vue3中props和emit怎么使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Vue3中props和emit怎么使用...
      99+
      2023-07-05
    • vue中组件的props属性有什么用
      这篇文章主要介绍vue中组件的props属性有什么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!问题一:那props具体是怎么使用呢?原理又是什么呢?往下看1、【定义被调用组件】首先,我们先定义一个person组件...
      99+
      2023-06-25
    • Vue中的 ref,props,mixin属性
      目录refprops$attrsmixinref ref 属性: 1.被用来给元素或子组件注册引用信息((id的替代者)2.应用在html标签上获取的是真实DOM元素,应用在组件标签...
      99+
      2024-04-02
    • vue属性props默认类型怎么写
      这篇“vue属性props默认类型怎么写”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“vue属性props默认类型怎么写”文...
      99+
      2023-06-30
    • React三大属性之props的使用详解
      目录类组件函数组件props是只读的 组件间通信 上期讲了state,接下来讲讲props。props功能在于组件间通信(父子组件),首先说说在各种组件中的用法: 类组件 //父...
      99+
      2024-04-02
    • Vue3计算属性是怎么实现的
      今天小编给大家分享一下Vue3计算属性是怎么实现的的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。计算属性是 Vue.js 开...
      99+
      2023-06-30
    • Vue3中SetUp函数的props和context参数怎么用
      第一个参数props:props是一个对象,包含父组件传递给子组件的所有数据。在子组件中使用props进行接收。包含配置声明并传入的所有的属性的对象也就是说:如果你想通过props的方式输出父组件传递给子组件的值。你需要使用props进行接...
      99+
      2023-05-22
      Vue3 setup props
    • Vue3中怎么使用watch监听对象的属性值
      这篇文章主要介绍“Vue3中怎么使用watch监听对象的属性值”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Vue3中怎么使用watch监听对象的属性值”文章能帮助大家解决问题。Vue3 中使用 w...
      99+
      2023-07-04
    • Vue3中的计算属性及侦听器怎么使用
      计算属性我们知道,在模板中可以直接通过插值语法显示一些data中的数据,但是在某些情况,我们可能需要对数据进行一些转化后再显示,或者需要将多个数据结合起来进行显示在模板中使用表达式,可以非常方便的实现,但是设计它们的初衷是用于简单的运算,在...
      99+
      2023-05-14
      Vue3
    • Vue3 计算属性的用法详解
      目录computed 计算属性说明计算属性使用总结注意上一篇博文说了 vue3 项目的 toRefs 函数和 toRef 函数,今天就稍微总结一下 vue3 的计算属性,其实学过 v...
      99+
      2024-04-02
    • 详细聊聊vue中组件的props属性
      目录问题一:那props具体是怎么使用呢?原理又是什么呢?往下看问题二:那如果我们想给年龄加1岁,怎么实现?问题三:对于年龄这一类型,我们最希望拿到的是什么数据类型?问题四:可以限制...
      99+
      2024-04-02
    • vue属性props默认类型的写法介绍
      目录vue属性props默认类型props自定义属性vue属性props默认类型 Vue.component('my-component', { props: { // ...
      99+
      2024-04-02
    • Vue子组件更新props中的属性值问题
      目录Vue子组件更新props的属性值.sync属性v-model应用Vue子组件中修改Props的几种情况针对以上几种情况再逐一进行分析结果展示结论Vue子组件更新props的属性...
      99+
      2022-11-13
      Vue子组件 更新props属性值 Vue props属性值
    • vue3中setup函数的参数props和context怎么配置
      这篇文章主要介绍了vue3中setup函数的参数props和context怎么配置的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇vue3中setup函数的参数props和con...
      99+
      2024-04-02
    • 深入了解Vue3中props的原理与使用
      目录前言介绍原理前提创建组件实例对象初始化Props操作创建proxy对象去获取Propsprops作为参数传入setup将proxy挂载到render上总结前言 props指父组件...
      99+
      2023-05-19
      Vue3 props原理 Vue3 props使用 Vue3 props
    • vue3如何使用watch监听props中的数据
      目录情况一:监听 props 中基本数据类型情况二:监听 props 中引用数据类型且父组件不改变地址指向情况三:监听 props 中引用数据类型且父组件改变地址指向总结写在最后情况...
      99+
      2022-11-13
      vue3监听props数据变化 vue3 监听props vue props监听
    • css3动画属性中Transitions属性与Animations属性怎么用
      小编给大家分享一下css3动画属性中Transitions属性与Animations属性怎么用,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!   1Transitions功能   (1...
      99+
      2024-04-02
    软考高级职称资格查询
    编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
    • 官方手机版

    • 微信公众号

    • 商务合作