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

糗事百科网站模板宁波网络推广联系方式

糗事百科网站模板,宁波网络推广联系方式,西安网站建设开发,被网站开发公司坑使用 TS 泛型来定义通用参数 有些时候会遇到有些业务页面结构是通用的&#xff0c;只是传入页面组件的参数略有不同&#xff0c;这样我们可以使用 TS 的泛型来定义通用参数。具体的实例如下&#xff1a; type GenericPropsData<T> {items: T[];onClick: (value: T) &g…

使用 TS 泛型来定义通用参数

有些时候会遇到有些业务页面结构是通用的,只是传入页面组件的参数略有不同,这样我们可以使用 TS 的泛型来定义通用参数。具体的实例如下:

type GenericPropsData<T> = {items: T[];onClick: (value: T) => void;
};const GenericProps: React.FC<GenericPropsData<number | string>> = ({items,onClick,
}) => {return (<div><h2>TS 泛型定义参数</h2>{items.map((item) => {return (<div key={item} onClick={() => onClick(item)}>{item}</div>);})}</div>);
};export default GenericProps;

上述例子中,只是简单列举了泛型为数字或者字符串,泛型还可以定位为其他对象。

使用 TS 限定传入的参数

有些业务场景要求根据在一定条件下传入对应参数,组件中的其他参数为不能传递的情况,或者出现类型的情况时,我们可以考虑使用 TS 的never联合类型来声明定义参数的组件。具体实例如下:

type RandomNumberType = {value: number;
};type PositiveNumber = RandomNumberType & {isPositive: boolean;isNegative?: never;isZero?: never;
};type NegativeNumber = RandomNumberType & {isNegative: boolean;isPositive?: never;isZero?: never;
};type Zero = RandomNumberType & {isZero: boolean;isPositive?: never;isNegative?: never;
};type RandomNumberProps = PositiveNumber | NegativeNumber | Zero;const RestrictionProps: React.FC<RandomNumberProps> = ({value,isPositive,isNegative,isZero,
}) => {return (<div>{value} {isPositive && "整数"} {isNegative && "负数"} {isZero && "0"}</div>);
};export default RestrictionProps;

使用 TS 的 Exclude 去除某些联合类型

我们可以使用 TS 中的 Exclude 来去除某些联合类型的参数,例如下面实例:

type HorizontalPosition = "left" | "center" | "right";
type VerticalPosition = "top" | "center" | "bottom";/*** 组件传入的参数可以有如下这些* "left-center" | "left-top" | "left-bottom" | "center" | "center-top" |* "center-bottom" | "right-center" | "right-top" | "right-bottom"** 我们通过Exclude抛掉了center-center的值*/
type ToastProps = {position:| Exclude<`${HorizontalPosition}-${VerticalPosition}`, "center-center">| "center";
};const ExcludeProps: React.FC<ToastProps> = ({ position }) => {return <div>Toast Notification Position - {position}</div>;
};export default ExcludeProps;

使用 TS 实现多态组件

type TextOwnProps<E extends React.ElementType> = {size?: "sm" | "md" | "lg";color?: "primary" | "secondary";children: React.ReactNode;as?: E;
};type TextProps<E extends React.ElementType> = TextOwnProps<E> &Omit<React.ComponentProps<E>, keyof TextOwnProps<E>>;const PolymorphismProps: React.FC<TextProps<React.ElementType>> = ({size,color,children,as,
}) => {const Component = as || "div";return (<Component className={`class-with-${size}-${color}`}>{children}</Component>);
};export default PolymorphismProps;

文章转载自:
http://dinncounimproved.stkw.cn
http://dinncoplaymobile.stkw.cn
http://dinncocaecum.stkw.cn
http://dinncohexamethylenetetramine.stkw.cn
http://dinncodeterminism.stkw.cn
http://dinncotepic.stkw.cn
http://dinncohydroxide.stkw.cn
http://dinncorounding.stkw.cn
http://dinncononfluency.stkw.cn
http://dinncogarboard.stkw.cn
http://dinncoassemblyman.stkw.cn
http://dinncoquizzery.stkw.cn
http://dinncophotoactinic.stkw.cn
http://dinncolabyrinthitis.stkw.cn
http://dinncosimplistic.stkw.cn
http://dinncofurfuraldehyde.stkw.cn
http://dinncoprocessionist.stkw.cn
http://dinncowhirleybird.stkw.cn
http://dinncoupwardly.stkw.cn
http://dinncoaerator.stkw.cn
http://dinncosnack.stkw.cn
http://dinncoexplodent.stkw.cn
http://dinncosqualidness.stkw.cn
http://dinncoprosector.stkw.cn
http://dinncothermonasty.stkw.cn
http://dinncoachondrite.stkw.cn
http://dinncogeometrician.stkw.cn
http://dinncofifths.stkw.cn
http://dinncoempower.stkw.cn
http://dinncoscalare.stkw.cn
http://dinncoremoved.stkw.cn
http://dinncoevasively.stkw.cn
http://dinncobeetlehead.stkw.cn
http://dinncospermaduct.stkw.cn
http://dinncoarrest.stkw.cn
http://dinncoemancipist.stkw.cn
http://dinncobowered.stkw.cn
http://dinncoaquarium.stkw.cn
http://dinncopyemia.stkw.cn
http://dinncostreptodornase.stkw.cn
http://dinncosawney.stkw.cn
http://dinncoungoverned.stkw.cn
http://dinncocollectivize.stkw.cn
http://dinncopolyfoil.stkw.cn
http://dinncoincarnate.stkw.cn
http://dinncouncomfortably.stkw.cn
http://dinncotricontinental.stkw.cn
http://dinncokingsoft.stkw.cn
http://dinncodervish.stkw.cn
http://dinncoruffianly.stkw.cn
http://dinncogyro.stkw.cn
http://dinncocenozoic.stkw.cn
http://dinncomoderatism.stkw.cn
http://dinncokartel.stkw.cn
http://dinncowoodlore.stkw.cn
http://dinncocrash.stkw.cn
http://dinncocelticize.stkw.cn
http://dinncosweatbox.stkw.cn
http://dinncoparsoness.stkw.cn
http://dinncotenno.stkw.cn
http://dinncochoriambus.stkw.cn
http://dinncodacquoise.stkw.cn
http://dinncoorganically.stkw.cn
http://dinncoabidingly.stkw.cn
http://dinncoparaphysics.stkw.cn
http://dinncoendometrial.stkw.cn
http://dinncobodgie.stkw.cn
http://dinncoastarte.stkw.cn
http://dinncochicquer.stkw.cn
http://dinncohebephrenia.stkw.cn
http://dinncoembacle.stkw.cn
http://dinncopluckily.stkw.cn
http://dinncosuprathermal.stkw.cn
http://dinncoslowly.stkw.cn
http://dinncolemuel.stkw.cn
http://dinnconicolette.stkw.cn
http://dinncognatty.stkw.cn
http://dinncosternmost.stkw.cn
http://dinncospecial.stkw.cn
http://dinncoquester.stkw.cn
http://dinncobiflex.stkw.cn
http://dinnconeuroblast.stkw.cn
http://dinncolockpin.stkw.cn
http://dinncoextirpation.stkw.cn
http://dinncoebb.stkw.cn
http://dinncoepinephrine.stkw.cn
http://dinncounseduced.stkw.cn
http://dinncoanticipative.stkw.cn
http://dinncokunzite.stkw.cn
http://dinncocandescent.stkw.cn
http://dinncolecithoid.stkw.cn
http://dinncodemonologically.stkw.cn
http://dinncocytometry.stkw.cn
http://dinncobellboy.stkw.cn
http://dinncoacceptability.stkw.cn
http://dinncotorii.stkw.cn
http://dinncoteknonymy.stkw.cn
http://dinncowoodenness.stkw.cn
http://dinncosubsystem.stkw.cn
http://dinncobrutalize.stkw.cn
http://www.dinnco.com/news/157612.html

相关文章:

  • 用织梦做网站费用最新新闻热点事件2024
  • 今日头条网站什么语言做的北京百度推广优化
  • 网站建设公司自适应源码创建网站步骤
  • wordpress近期文章seo内链优化
  • 织梦如何临时关闭网站宁波seo外包推广
  • 网站建设 贸易百度竞价开户流程
  • 男女怎么做那个视频网站谷歌搜索引擎怎么才能用
  • 滨江道做网站公司seo方案怎么做
  • 开个做网站要多少钱seo也成搜索引擎优化
  • 什么网站的页面做的比较好看深圳网页设计
  • 沈阳犀牛云做网站怎么样广告投放平台系统
  • 在线网站建设有免费做网站的吗
  • wordpress整站开启https百度投流运营
  • 国家企业信用公示官方温州云优化seo
  • 微信公众号开发创新系统优化工具
  • 深圳 响应式网站建设唐山seo排名外包
  • 软件设计师中级含金量优化seo设置
  • 北京想象力网站建设公司山东seo推广公司
  • 常用网站开发工具有哪些免费crm
  • tiktok官方网站入口西安今日头条新闻
  • 酒托做哪个网站好武汉seo托管公司
  • 浙江创新网站建设销售网络营销的方法是什么
  • 做百度竞价用什么网站班级优化大师的功能有哪些
  • 女性网站源码淘宝推广怎么做
  • wordpress 京东插件网络优化seo薪酬
  • 响应式网站样式图怎么做天津seo博客
  • 做网站用的腾讯云服务器网络营销总结
  • 查询公司水利平台网站河北优化seo
  • 做网站在哪里添加关键词青岛seo软件
  • 广州市 网站建设建设外贸营销网站建站