iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > VUE >Vue3与Vue2 的Props全局组件的异同点有哪些
  • 396
分享到

Vue3与Vue2 的Props全局组件的异同点有哪些

2024-04-02 19:04:59 396人浏览 独家记忆
摘要

这期内容当中小编将会给大家带来有关vue3与Vue2 的Props全局组件的异同点有哪些,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。Vue3 PropsProps 是任

这期内容当中小编将会给大家带来有关vue3Vue2 的Props全局组件的异同点有哪些,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

Vue3与Vue2 的Props全局组件的异同点有哪些

Vue3 Props

Props 是任何现代 js 框架的重要组成部分。在组件之间传递数据的能力是Vue项目的基本要素。Vue3 中,在组件中访问Props的方式与 Vue2  会有所不同。

为什么使用 Props 很重要?

首先,我们要了解什么是 props。props是可在组件上注册的自定义属性,可让我们将数据从父组件传递到其子组件方式之一。

由于props让我们能够在组件之间共享数据,因此它使我们可以将Vue项目分解成更多的模块化组件。

Vue3与Vue2 的Props全局组件的异同点有哪些

props 示例

Vue3 之前,组件的props只是 this 对象的一部分,可以使用this.propName进行访问。

但是,Vue3的一大变化是setup方法的引入。

setup方法包含了几乎所有过去被分隔成不同的选项,如data,computed,watch等。关于setup方法的需要重点注意的是,它里面没有  this。

那么我们如何不使用this来使用Vue3 props 呢?

其实超级简单,setup方法实际上有两个参数:

  1. 鸿蒙官方战略合作共建——HarmonyOS技术社区

  2. props – 包含组件的 props 的对象。

  3. context – 一个对象,它包含了在this上能找到的特定属性。

context 官方文档里只说明了有 attrs, slots, 和 emit()。

来个示例:

setup (props, context) {     console.log(props.propName) // access a prop to our component }

做项目中发现,其实 context 还有一个 exposed,这个是用来暴露 setup 中方法的,就是父组件能访问到子组件中 setup  里面的方法。这个在项目中有遇到过这个需求,所以我也去 Vue GitHub 上Issues 中去找答案,发现也有人提问:

Vue3与Vue2 的Props全局组件的异同点有哪些

尤大,在底部明确说明了不推荐这么做:

Vue3与Vue2 的Props全局组件的异同点有哪些

他建议通过 父组件传入子组件一个 Props 来实现。

为什么 Vue3 props 的工作方式与 Vue2 不同?

更改 Vue3 Props 的方式主要的一个原因,使 this  在组件/方法中的含义更清楚。有时在查看Vue2代码时,this所指可能是模棱两可的。

Vue 团队在设计 Vue3 时的一个大目标是使其在大型项目中更具可伸缩性。其中一部分是将Options api重新设计为Composition  API,以实现更好的代码组织。

Vue3与Vue2 的Props全局组件的异同点有哪些

但是通过消除对 this 的大多数引用,而是使用显式的context和props变量,可以提高大型Vue项目的可读性。

如何注册 Vue3 全局组件

现在,我们来看看如何注册Vue3全局组件,方便在我们整个项目都能访问。与我们在Vue2中声明它们的方式稍有不同,但也是非常简单。

什么是全局组件

首先,我们要还了解Vue3全局组件是什么以及为什么要使用它。

通常,当我们想在 Vue 实例中包含一个组件时,我们会在本地注册它,一般是这样使用:

<script> import PopupWindow from '../components/PopupWindow.vue';  export default {   components: {     PopupWindow   } } </script>

但是,假设有一个组件,我们知道它会在多个文件中多次使用。所以在每个文件都需要写一遍上述的代码-尤其是在我们重构了项目或进行某些操作的情况下,就会比较麻烦。

在这种情况下,全局注册组件是有用的,这样就可以在主根Vue实例的所有子组件中访问该组件。换句话说,全局注册一个组件意味着我们不必在每个文件中导入它。

Vue2 中全局组件是如何工作的

在Vue2中,无论我们在哪里创建Vue实例,我们都只需要调用Vue.component方法来注册全局组件。

这个方法有两个参数:

  1. 鸿蒙官方战略合作共建——HarmonyOS技术社区

  2. 全局组件的名称

  3. 我们的组件本身

import Vue from 'vue' import PopupWindow from './components/PopupWindow' import App from './App.vue'  Vue.component('PopupWindow', PopupWindow) // global reGIStration - can be used anywhere  new Vue({   render: h => h(App) }).$mount('#app')

现在,此 PopupWindow 组件可以在此Vue实例的所有子级中使用。

那么在 Vue3 中呢

在Vue3中,由于创建Vue实例的工作方式略有不同(使用createApp),所以代码略有不同,但理解起来同样简单。

比起从Vue2对象中声明全局组件,我们首先必须创建我们的应用程序。然后,可以像以前一样运行相同的.component方法。

import { createApp } from 'vue' import PopupWindow from './components/PopupWindow' import App from "./App.vue"  const app = createApp(App)  app.component('PopupWindow', PopupWindow) // global registration - can be used anywhere  app.mount('#app')

上述就是小编为大家分享的Vue3与Vue2 的Props全局组件的异同点有哪些了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注编程网VUE频道。

--结束END--

本文标题: Vue3与Vue2 的Props全局组件的异同点有哪些

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

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

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Vue3与Vue2 的Props全局组件的异同点有哪些
    这期内容当中小编将会给大家带来有关Vue3与Vue2 的Props全局组件的异同点有哪些,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。Vue3 PropsProps 是任...
    99+
    2024-04-02
  • Jmeter与LoadRunner的异同点有哪些
    本篇内容主要讲解“Jmeter与LoadRunner的异同点有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Jmeter与LoadRunner的异同点有哪些”吧!关键特征:支持HTTP/HT...
    99+
    2023-06-04
  • Kotlin与Java的异同点有哪些
    这篇文章主要介绍“Kotlin与Java的异同点有哪些”,在日常操作中,相信很多人在Kotlin与Java的异同点有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Kotlin与Java的异同点有哪些”的疑...
    99+
    2023-06-02
  • Ref操作Dom在Vue2.x和Vue3.x的不同点有哪些
    本篇内容介绍了“Ref操作Dom在Vue2.x和Vue3.x的不同点有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!在开发一个项目之前,...
    99+
    2023-07-05
  • vue全局组件和局部组件的区别有哪些
    今天小编给大家分享一下vue全局组件和局部组件的区别有哪些的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。区别:1、使用范围不...
    99+
    2023-07-04
  • javascript中mouseenter与mouseover的异同点有哪些
    这篇文章主要介绍javascript中mouseenter与mouseover的异同点有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!mouseenter与mouseover的异...
    99+
    2024-04-02
  • python列表和元组的异同点有哪些
    Python列表和元组都是序列类型的数据结构,可以存储多个元素。相同点:1. 都可以通过索引访问元素,可以使用切片操作对序列进行切片...
    99+
    2023-10-12
    python
  • var,let,const的异同点有哪些
    小编给大家分享一下var,let,const的异同点有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一、let和var区别1...
    99+
    2024-04-02
  • nodejs与swoole的不同点有哪些
    这篇“nodejs与swoole的不同点有哪些”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“nodejs与swoole的不同...
    99+
    2023-06-29
  • Vue3的组件通信方式有哪些
    本篇内容主要讲解“Vue3的组件通信方式有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Vue3的组件通信方式有哪些”吧!Props父组件传值给子组件(简称:父传子)Props 文档父组件/...
    99+
    2023-06-29
  • Oracle全局临时表的特点有哪些
    全局临时表是一种特殊类型的表,它在整个数据库会话期间都存在,而不是只存在于特定的会话中。 全局临时表的数据对所有的会话都是可见的,...
    99+
    2024-04-19
    Oracle
  • volatile和原子类的异同点有哪些
    这篇文章主要讲解了“volatile和原子类的异同点有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“volatile和原子类的异同点有哪些”吧!vola...
    99+
    2024-04-02
  • node同步与异步的区别有哪些
    这篇“node同步与异步的区别有哪些”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“node...
    99+
    2024-04-02
  • Node的CJS与ESM有哪些不同点
    今天小编给大家分享一下Node的CJS与ESM有哪些不同点的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起...
    99+
    2024-04-02
  • Vue3中组件通讯的方法有哪些
    这篇文章主要讲解了“Vue3中组件通讯的方法有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Vue3中组件通讯的方法有哪些”吧!Props父组件传值给子组件(简称:父传子)Props 文...
    99+
    2023-07-02
  • C++组件异常的危害有哪些
    C++组件异常的危害包括:1. 程序崩溃:异常可能导致程序崩溃,使得程序无法继续执行。这会影响用户体验,导致数据丢失或不可预测的行为...
    99+
    2023-10-10
    C++
  • python元组和列表的不同点有哪些
    这篇文章主要介绍“python元组和列表的不同点有哪些”,在日常操作中,相信很多人在python元组和列表的不同点有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”python元组和列表的不同点有哪些”的疑...
    99+
    2023-06-20
  • PHP中的数组有哪些常用操作方式?与NumPy的相同点和差异是什么?
    PHP中的数组是一种非常常见的数据类型,可以存储多个值,并且可以通过索引访问和操作数组中的元素。在本文中,我们将介绍PHP中的数组常用操作方式,并将其与NumPy进行比较,以便更好地理解它们之间的相同点和差异。 一、PHP中的数组常用操作方...
    99+
    2023-08-26
    数组 numpy spring
  • java中局部变量与全局变量的区别有哪些
    本篇文章为大家展示了java中局部变量与全局变量的区别有哪些,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。1、局部变量:局部变量的定义:定义在方法中的变量都是局部变量(main方法也是方法,所以定义...
    99+
    2023-05-31
    java 局部变量 全局变量
  • vue中props,data,computed变化对组件更新的影响有哪些
    这篇文章将为大家详细讲解有关vue中props,data,computed变化对组件更新的影响有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。代码: <temp...
    99+
    2024-04-02
软考高级职称资格查询
推荐阅读
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作