断言一个类型没有品牌化
P粉323224129
P粉323224129 2023-08-18 11:51:11
[JavaScript讨论组]
<p>如果我们定义一个类型品牌,例如:</p> <pre class="brush:php;toolbar:false;">declare const nominalSymbol: unique symbol; type Nominal&lt;T extends string, U&gt; = U &amp; { [nominalSymbol]: T };</pre> <p>是否有一种方法可以定义一个类型<code>NotNominal&lt;U&gt;</code>,如果<code>U</code>不是一个品牌类型,则解析为<code>U</code>。</p> <pre class="brush:php;toolbar:false;">declare const nominalSymbol: unique symbol; type Nominal&lt;T extends string, U&gt; = U &amp; { [nominalSymbol]: T }; type BrandedType = Nominal&lt;'Address', string&gt;; type a = NotNominal&lt;string&gt; // 这应该是 `string` type b = NotNominal&lt;Address&gt; // 这应该是 `never`</pre> <p><br /></p>
P粉323224129
P粉323224129

全部回复(1)
P粉727531237
type NotNominal<U> = U extends { [nominalSymbol]: string } ? never : U
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号