斷言一個類型沒有品牌化
P粉323224129
P粉323224129 2023-08-18 11:51:11
0
1
530
<p>如果我們定義一個類型品牌,例如:</p> <pre class="brush:php;toolbar:false;">declare const nominalSymbol: unique symbol; type Nominal<T extends string, U> = U & { [nominalSymbol]: T };</pre> <p>有沒有方法可以定義一個型別<code>NotNominal<U></code>,如果<code>U</code>不是品牌類型,則解析為<code>U< /code>。 </p> <pre class="brush:php;toolbar:false;">declare const nominalSymbol: unique symbol; type Nominal<T extends string, U> = U & { [nominalSymbol]: T }; type BrandedType = Nominal<'Address', string>; type a = NotNominal<string> // 這應該是 `string` type b = NotNominal<Address> // 這應該是 `never`</pre> <p><br /></p>
P粉323224129
P粉323224129

全部回覆(1)
P粉727531237
type NotNominal<U> = U extends { [nominalSymbol]: string } ? never : U
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板