当前位置: 首页 > news >正文

网站开发网页跳转到新的页面最近七天的新闻重点

网站开发网页跳转到新的页面,最近七天的新闻重点,网站开发导向图,重庆免费建站公司地址通常,您将通过 props 将信息从父组件传递到子组件。但是,如果必须将道具传递到中间的许多组件,或者应用中的许多组件需要相同的信息,则传递道具可能会变得冗长且不方便。Context 允许父组件将一些信息提供给其下树中的任何组件&am…

通常,您将通过 props 将信息从父组件传递到子组件。但是,如果必须将道具传递到中间的许多组件,或者应用中的许多组件需要相同的信息,则传递道具可能会变得冗长且不方便。Context 允许父组件将一些信息提供给其下树中的任何组件(无论其深度如何),而无需通过 prop 显式传递它。

传递道具的问题

传递道具是将数据通过 UI 树显式传递到使用它的组件的好方法。

但是,当您需要将一些道具深入树中传递时,或者如果许多组件需要相同的道具时,传递道具可能会变得冗长和不方便。最接近的共同祖先可能与需要数据的组件相距甚远,将状态提升到如此高的水平可能会导致一种称为“支柱钻孔”的情况。

如果有一种方法可以在不传递道具的情况下将数据“传送”到树中需要它的组件,那不是很好吗?有了 React 的上下文功能,就有了!

上下文:传递道具的替代方案

Context 允许父组件向其下的整个树提供数据。上下文有很多用途。下面是一个例子。考虑以下接受 a 大小的组件:Headinglevel

import Heading from './Heading.js';
import Section from './Section.js';export default function Page() {return (<Section><Heading level={1}>Title</Heading><Heading level={2}>Heading</Heading><Heading level={3}>Sub-heading</Heading><Heading level={4}>Sub-sub-heading</Heading><Heading level={5}>Sub-sub-sub-heading</Heading><Heading level={6}>Sub-sub-sub-sub-heading</Heading></Section>);
}
export default function Section({ children }) {return (<section className="section">{children}</section>);
}
export default function Heading({ level, children }) {switch (level) {case 1:return <h1>{children}</h1>;case 2:return <h2>{children}</h2>;case 3:return <h3>{children}</h3>;case 4:return <h4>{children}</h4>;case 5:return <h5>{children}</h5>;case 6:return <h6>{children}</h6>;default:throw Error('Unknown level: ' + level);}
}

假设您希望同一标题中的多个标题始终具有相同的大小:Section

import Heading from './Heading.js';
import Section from './Section.js';export default function Page() {return (<Section><Heading level={1}>Title</Heading><Section><Heading level={2}>Heading</Heading><Heading level={2}>Heading</Heading><Heading level={2}>Heading</Heading><Section><Heading level={3}>Sub-heading</Heading><Heading level={3}>Sub-heading</Heading><Heading level={3}>Sub-heading</Heading><Section><Heading level={4}>Sub-sub-heading</Heading><Heading level={4}>Sub-sub-heading</Heading><Heading level={4}>Sub-sub-heading</Heading></Section></Section></Section></Section>);
}
export default function Section({ children }) {return (<section className="section">{children}</section>);
}
export default function Heading({ level, children }) {switch (level) {case 1:return <h1>{children}</h1>;case 2:return <h2>{children}</h2>;case 3:return <h3>{children}</h3>;case 4:return <h4>{children}</h4>;case 5:return <h5>{children}</h5>;case 6:return <h6>{children}</h6>;default:throw Error('Unknown level: ' + level);}
}

目前,您将 prop 分别传递给每个:level<Heading>

<Section>
<Heading level={3}>About</Heading>
<Heading level={3}>Photos</Heading>
<Heading level={3}>Videos</Heading>
</Section>

如果您可以将 prop 传递给组件并将其从 .这样,您可以强制同一部分中的所有标题都具有相同的大小:level<Section><Heading>

<Section level={3}>
<Heading>About</Heading>
<Heading>Photos</Heading>
<Heading>Videos</Heading>
</Section>
http://www.mmbaike.com/news/721.html

相关文章:

  • 哈尔滨网站建设公司有哪些网络推广公司有哪些
  • 定制相册哪个网站好网络营销的四个特点
  • 3gcms企业手机网站整站源码asp网络推广方法怎么样
  • 网站建设的原则 流程长沙seo优化排名推广
  • 宁波网站制作工具免费信息发布平台网站
  • 假网站连接怎么做的黄山seo公司
  • 网站建设的用途是什么意思成人教育培训机构
  • 商务网站建设体会关键词seo优化
  • 网站建设公司不挣钱的原因中国站长之家官网
  • 手工网站大全做椅子套seo推广哪家服务好
  • 新闻网站开发的目的seo排名赚挂机
  • 消费者联盟网站怎么做跨国网站浏览器
  • 秦皇岛手机网站百度推广代理开户
  • 自己做的网站怎么挂网上关键词推广优化
  • 网站如何做图片自动切换营口建网站的公司
  • 教育培训网站源码链接推广
  • 制作手机wap网站工具石家庄网站建设
  • 重庆未来科技网站建设网络营销中心
  • 个人网站可以做淘宝客b站好看的纪录片免费
  • b2b商城网站源码新浪博客seo
  • 贵阳有做网站的公司吗发稿网
  • 企业网站免费源码友情链接代码
  • 独立站网站架构百度百家号官网
  • 网站图片用什么软件做seo网站优化推广
  • 网站建设推广怎么做seo推广优化的方法
  • 扫二维码直接进入网站 怎么做湖南最新消息今天
  • 网站开发目的与意义seo推广营销公司
  • 电商购物平台宁波seo网络推广主要作用
  • 怎么做类似返利网的网站云搜索app下载
  • 环球中心建于哪一年seo关键词优化排名外包