当前位置: 首页 > 网络应用技术

Vue和React比较组件分量(12种VUE2,9种VUE3和7种反应类型)

时间:2023-03-08 10:38:48 网络应用技术

  他是当前前端最热门的两个框架。无论采访还是工作都是前端开发人员必须掌握的。

  今天,我们通过比较了解组件的组成部分。

  本文首先描述了组件值方法,然后专门介绍了每种值和特定用途的应用程序方案。在本文中,比较总结了与组件部分相同的点和不同的点和不同的点。

  我希望通过这种比较方法,我们学习时会给我们留下深刻的印象,并希望帮助所有人。

  有12种类型的组件通信

  尽管有许多组件通信方法,但以不同方式有不同的应用程序方案。

  父亲-Child Compartion Communication Brothers Complote Cross -Level -level组件通信用于将数据传输到父组件中。

  接收数据后,子组件无法直接修改父部件的数据。将报告错误。

  当您需要修改它时,应在父组件中对其进行修改。修改父部件后,将同时渲染子组件。

  如果您必须在子组件中修改它,则必须使用它来使用sub -component的新属性,而不是直接修改。

  我们知道这是一个 - 通道数据流,并且传递给父组件的子组件的数据无法直接修改。

  因此,当子组件要修改父组件数据时,您需要公开事件并将值传递给父组件。父组件监视事件以完成值的值。

  您需要修改父组件传递的属性的值。每次您需要公开方法,然后收听父部件主管,然后对其进行修改。特别麻烦吗?

  它用于简化此过程。

  父组件无需收听事件,然后修改值。

  父组件在传输属性时只需要添加修饰符,然后在修改subsot时暴露的事件。

  我们知道有一种简化数据修改的方法吗?是的,那是

  默认情况下,属性命名值并自动监视事件。

  让我们看看一个例子

  在上面的示例中,我们的帧识别是,当我们修改框值时,父组件值将会更改。这实际上是两个路绑定。

  但是有时候我们不可能通过属性然后监视事件,这表明它不满足我们的需求。

  如果需要修改属性和事件,该怎么办?这需要我们的参数。此属性在sub -component.contains中定义了两个属性以定义属性名称以定义事件名称。

  例如,我们要通过的属性名称,监视事件是。

  其他事件或属性是相似的,我不会在这里详细介绍。但是您只需要注意一个组件。

  如果您需要直接操作,我们可以使用它。

  如果在普通的DOM元素上,请引用DOM元素的点;

  如果在子组件上,引用的方向是子组件实例。

  应该注意的是,如果在周期中定义它,则将是一个数组。

  与Ref类似,我们可以直接获得子组件或母体组件。

  :获取一个包含所有子类(不包括孙子组件)的VueComponent对象数组,您可以直接在子座中获取所有数据和方法。

  :获取父节点的vueComponent对象,该对象还包括父节点中的所有数据和方法。

  同样,您可以获取根案例。

  那是我们创建的示例

  有必要一起使用它,以允许祖先组件将依赖项注入其后代的所有后代。无论组件级别有多深,在建立上游和下游关系期间,它始终将生效。如果您熟悉,这与特征非常相似。

  选项应成为对象的函数或返回对象。该对象包含可以注入其后代的属性。

  该选项应为:

  提示:绑定不是响应。这是故意的。但是,如果您通过监视对象,则可以响应对象的对象。

  在2.5.0+注射中,可以通过设置默认值来转移到选项:

  如果需要从其他名称注入,则用于指示其源属性:

  与Prop的默认值相似,您需要使用出厂方法来实现非原始值:

  当多层嵌套组件传输数据时,可以使用它仅在无需进行中间处理的情况下传输数据即可使用。例如,当父组件将数据传达到孙子组件时。

  在父范围内包含属性绑定(和除外)的属性绑定(和除外)。当组件未声明任何Prop时,它将包括所有父分数的绑定(除外)。

  在父范围内包括(不包括修饰符)事件监视器。

  也许有些朋友不明白,让我们理解下面的示例

  您可以使用父组件将内容直接传递给子组件。子组件标签中的内容可以传递。

  未命名的默认名称是。

  不仅是父组件传输内容到子组件,子模块还可以通过字段插槽传递数据到父组件。

  顺便说一句,谈论和谐。

  EAVEN名称插槽具有相应的打印量(例如:介质中的内容将在中间找到)。Property包含名称插槽中未包含的所有节点或内容。

  每个属性都包含一个数组。

  请注意,插槽不响应。如果您需要一个组件才能在传输数据更改时进行纠正,我们建议更改策略并依赖响应实例选项,例如或其他响应。

  用于访问域插槽的用于每个插槽,其中包括此对象包含一个返回相应VNode的函数。

  我们可以通过调用相应的方法传递响应数据来获得数组。类似的返回值。

  与前部相似,但没有价值。

  主要使用四种示例方法传输数据。

  首先,我们定义一个

  VUEX是为vue.js应用程序开发的一种状态管理模式。它采用了集中存储管理应用程序的所有组件的状态,并确保状态在相应的规则中以可预测的方式变化。

  作者不会说太多。每个人都应该知道,如果您不知道,可以检查文档的VUE2版本的官方文档。

  组件通信有9个中的9个

  尽管有许多组件通信方法,但以不同方式有不同的应用程序方案。

  父亲 - 孩子组件通信兄弟组件交流交叉 - 级别的组件通信用于将父部件的价值传递给子女组件,并且使用情况没有差异。

  这是相同的使用方式,但是您需要注意:

  需要使用该定义。

  使用时,您需要注意:

  在中国,我们知道它包含在父范围内包含无所作为(并获得)的具有约束力(和除外)。

  在中间的中间,第二个参数被转移到。不再忽略它。换句话说,和谐将存在。

  使用方法与此相同。当多层嵌套组件通过数据时,如果仅通过数据,则可以使用中间处理。例如,当父组件将数据传达到孙子组件时。

  我们只需要注意两点:

  如果您不想使用默认名称,我们稍后可以添加自定义名称。

  有必要一起使用它,以允许祖先组件将依赖项注入其后代的所有后代。无论组件级别有多深,在建立上游和下游关系期间,它始终将生效。

  原理是相同的,方法可能会更改。

  上面的写作方法是语法糖的语法,这更简洁。不要与您的朋友不熟悉。

  我们知道该方法已被删除,因此无法与Cross -Assembly进行通信。但是现在有一个替代计划MITT.JS,仍然是。

  首先安装

  然后,像先前封装的巴士一样,包装

  然后使用两个组件之间的通信

  它是用于应用程序开发的状态管理模式。它采用了集中存储管理应用程序的所有组件的状态,并确保该州在相应的规则中以可预测的方式变化。

  作者不会说太多。每个人都应该知道,如果您不知道,可以检查文档的VUE3版本的官方文档。

  如果您以前曾使用过状态管理,那么类似的插件。它是最新一代轻量级的状态管理插件-in.cording you yuxi,它将不再接受新功能,建议使用新项目。

  作者不会说太多,您可以查看官方文档以自己学习。

  组件通信中有7个

  尽管有许多组件通信方法,但以不同方式有不同的应用程序方案。

  父亲-Child Compartion Communication Brothers Complote Cross -Level -level组件通信用于将父部件的价值传递给子女组件,该组件可以传递属性或方法甚至组件。

  我们可以发现,中子组件中的消息传输消息到父组件是由父组件调用该方法,以通过父组件的形式调用sub -component。此部分之间仍然有很大的区别。

  上下文用于父子或后代之间的沟通,类似

  有很多方法可以查看如何使用。它可以用于传递使用哪种方法,但只有在传递多个嵌套以获取多个方法时才能使用。此作者在这里停止谈论它。

  您可以获取子组件实例,然后使用组件上的属性或方法。这类似于。

  创建方法是恢复功能的方法。但是我们需要注意的一件事,您不能在功能组件上使用ref属性,因为它们没有示例。如果您想获得功能组件的ref,则需要使用它并合作使用它。我不会在这里说任何话。

  在中间,组件中写入的内容都是类似的。

  根据插入内容的数量,它可能是数组或对象。当只有一个内容时,它是一个对象,当有多个内容时,它是一个数组。

  当插槽同时存在时,插槽应占上风。

  请勿支持自定义事件,因此无法进行VUE。因此您需要使用外部插头。

  EventEdemitter是一个,类似。

  它是一种州管理工具,类似,您可以自己检查官方文档。

  它是一种州管理工具,类似,您可以自己检查官方文档。

  Vue和React学习生命周期函数的比较(VUE2,VUE3,旧版本React,新版本的React)

  感谢朋友们观看了病人,本文是作者的个人研究笔记。如果本文对您有所帮助,请同样喜欢??,您的支持是作者不断更新的动机!

  原始:https://juejin.cn/post/7101869216596230152