Angular React Vue 比较 – 组件篇之内置组件

本文对比了Angular、React和Vue三种框架的内置组件,包括React的Fragment、Profiler、StrictMode和Suspense,Vue的Transition、TransitionGroup、KeepAlive、Teleport以及Suspense的使用。文章强调了理解这些组件在实际项目中的重要性,鼓励读者参考官方文档以获取更准确的信息。
摘要由CSDN通过智能技术生成

本篇文章是组件篇的最后一篇,我们将探讨一下三大框架本身的内置组件。

Angular 的内置组件

在 Angular 中并没有内置组件,它只有一些内置指令。

虽然 Angular 官方把指令也称为一种特殊的组件,不过我们还是把指令在另外的篇章中讨论,就不在组件篇里讨论了。

React 的内置组件

React 提供了一些内置的组件,我们可以在 JSX 中使用它们。

组件 描述
<Fragment> <Fragment> 通常使用 <>…</> 代替,它们都允许你在不添加额外节点的情况下将子元素组合。
<Profiler> <Profiler> 允许你编程式测量 React 树的渲染性能。
<StrictMode> <StrictMode> 帮助你在开发过程中尽早地发现组件中的常见错误。
<Suspense> <Suspense> 允许在子组件完成加载前展示后备方案。

<Fragment>

当我们需要单个元素时,我们可以使用 <Fragment> 将其他元素组合起来,使用 <Fragment> 组合后的元素不会对 DOM 产生影响,就像元素没有被组合一样。在大多数情况下,<Fragment></Fragment> 可以简写为空的 JSX 元素 <></>

<>
  <OneChild />
  <AnotherChild />
</>

<Fragment> 还可以有一个可选参数 key ,如果我们要传递 key 给一个 <Fragment>,不能使用 <>...</>,必须从 'react' 中导入 Fragment 且表示为<Fragment key={yourKey}>...</Fragment>

import { Fragment } from 'react';

function Blog() {
  return posts.map(post =>
    <Fragment key={post.id}>
      <PostTitle title={post.title} />
      <PostBody body={post.body} />
    </Fragment>
  );
}

<Profiler>

我们使用 <Profiler> 包裹组件树,以测量其渲染性能。进行性能分析会增加一些额外的开销,因此 在默认情况下,它在生产环境中是被禁用的

<Profiler id="App" onRender={onRender}>
  <App />
</Profiler>

参数:

  • id:字符串,用于标识正在测量的 UI 部分。
  • onRender:onRender 回调函数,当包裹的组件树更新时,React 都会调用它。它接收有关渲染内容和所花费时间的信息。

<StrictMode>

我们可以使用 StrictMode 来启用组件树内部的额外开发行为和警告。

import { StrictMode } from 'react';
import { createRoot } from 'react-dom/client';

const root = createRoot(document.getElementById('root'));
r
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值