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

百度站长对网站会有影响吗备案网站ip

百度站长对网站会有影响吗,备案网站ip,网站没有流量怎么办,网站名称在哪里修改目录 通过 children 属性结合条件渲染通过 children 和 slot 属性实现具名插槽通过 props 实现具名插槽 在 React 中,并没有直接类似于 Vue 中的“插槽”机制(slot)。但是,React 可以通过 props和 children 来实现类似插槽的功能…

目录

  • 通过 children 属性结合条件渲染
  • 通过 children 和 slot 属性实现具名插槽
  • 通过 props 实现具名插槽

在 React 中,并没有直接类似于 Vue 中的“插槽”机制(slot)。但是,React 可以通过 propschildren 来实现类似插槽的功能,允许你将组件的内容进行灵活插入和替换。

通过 children 属性结合条件渲染

通过 children 来传递任意数量的子元素,然后在组件内部通过位置进行条件渲染,从而实现插槽功能。

Layout 组件通过 children 渲染传递给它的所有子元素,而这些子元素可以是任何内容,类似于 Vue 中的默认插槽。虽然在某些情况下,children 已经是一个数组(例如多个子元素的情况),但 React.Children.toArray 会确保你始终获得一个标准化的数组(过滤掉null、undefined等数据)。

//子组件
const Layout = ({ children }) => {children = React.Children.toArray(children);console.log(children,'children')return (<div className="layout"><header>Header</header><main>{children}</main> {/* 这里的 children 就是父组件传递进来的内容 */}<footer>Footer</footer></div>);
}; 
//父组件
const App = () => {return (<Layout><h1>Hello, React!</h1><p>This is the main content of the page.</p></Layout>);
};

打印出children,就是父组件标签里内容编译成的virtualDOM。

在这里插入图片描述

通过 children 和 slot 属性实现具名插槽

在标签上加slot来标记标签

//父组件
root.render(<><DemoOne title="REACT好好玩哦" x={10}><span slot="footer">我是页脚</span><span>哈哈哈哈</span><span slot="header">我是页眉</span></DemoOne></>
); 

子组件根据children属性中的slot来区分插槽

//子组件
const DemoOne = function DemoOne(props) {let { title, x, children } = props;children = React.Children.toArray(children);let headerSlot = [],footerSlot = [],defaultSlot = [];children.forEach(child => {// 传递进来的插槽信息,都是编译为virtualDOM后传递进来的「而不是传递的标签」let { slot } = child.props;if (slot === 'header') {headerSlot.push(child);} else if (slot === 'footer') {footerSlot.push(child);} else {defaultSlot.push(child);}});return <div className="demo-box">{headerSlot}<br /><h2 className="title">{title}</h2><span>{x}</span><br />{footerSlot}</div>;
};

通过 props 实现具名插槽

显式传递 props 来模拟具名插槽,传递不同的内容到特定的插槽位置

const DemoOne = ({ title, x, children, footer, header }) => {return (<div className="demo-box"><h1>{title}</h1><div>{header}</div> {/* 渲染具名插槽 header */}<div>{children}</div> {/* 渲染默认插槽 */}<div>{footer}</div> {/* 渲染具名插槽 footer */}</div>);
};const App = () => {return (<DemoOne title="REACT好好玩哦" x={10} footer={<span>我是页脚</span>} header={<span>我是页眉</span>}><span>哈哈哈哈</span></DemoOne>);
};

在这里插入图片描述

http://www.yayakq.cn/news/348509/

相关文章:

  • 建一个团购网站WordPress缩略图太模糊
  • 网站后台登陆代码360浏览器网页版
  • 网站建设 中企动力 石家庄乐天seo视频教程
  • 免费建网站平台教企业宣传片常用背景音乐
  • 个人公众号做网站电子商务网站案例分析
  • 网站正在建设中视频wordpress链接默认是什么样子
  • 酒水招商加盟网网络营销推广seo
  • 重庆网站seo搜索引擎优化泉州网站建站模板
  • 建设部质量监督官方网站网站搭建为什么要备案
  • 网站建设及第三方支付关于文案的网站
  • 织梦房产网站源码做网站广告怎么做
  • 黄岩网站开发动画短视频制作教程
  • 比较好的网站开发公司电话北京搜索引擎优化seo
  • 网站包装推广案例济南网站建设多少费用
  • 福建人力资源建设网站成都景观设计公司排名
  • 做网站后租服务器一年多少钱wordpress 建立第二个网站
  • 万能网网站seo诊断方案
  • 网站建设当中的技术解决方案深圳中英文网站建设
  • 我要自学网app下载绍兴网站建设seo
  • 江油建设局网站昆明网站排名优化公司哪家好
  • 计算机网络资源网站建设论文重庆网站优化公司
  • 男女做那个视频网站营销策划方案怎么做
  • html手机网站wordpress+Apache升级
  • 优化推广排名网站教程微信网站多少钱
  • 百度广告投放公司建瓯网站建设wzjseo
  • 建设手机网站设计网站建设费用的财务核算
  • 做网站费用怎么入账开网店的流程步骤
  • 高校档案馆网站建设wordpress时间中文
  • 上海网站建设服务电话广州车陂网站建设公司
  • 网站建设中 下载wordpress音乐插件歌词