【问题标题】:What does TypeScript pipe operator mean when used with strings?TypeScript 管道运算符与字符串一起使用时是什么意思?
【发布时间】:2017-05-19 10:57:42
【问题描述】:

我知道联合类型,但是这种管道语法是什么意思?

let propName: "name" | "age" | "location";

来源:https://blogs.msdn.microsoft.com/typescript/2016/12/07/announcing-typescript-2-1/

【问题讨论】:

    标签: typescript typescript2.1 union-types


    【解决方案1】:

    回答我自己的问题:这些是 https://www.typescriptlang.org/docs/handbook/advanced-types.html#string-literal-types 中的“字符串文字类型”

    字符串字面量类型允许您指定字符串必须具有的确切值。在实践中,字符串文字类型与联合类型、类型保护和类型别名很好地结合在一起。您可以结合使用这些功能来获得类似枚举的字符串行为。

    【讨论】:

    • 有一个better link。我喜欢将其视为基于字符串的枚举。此外,值得注意的是,keyof 运算符采用类型 T 并返回字符串字面量类型,由 T 的属性组成(表达式 keyof T 称为 indexed type query)。
    【解决方案2】:

    我们称之为管道运算符。 实验性管道运算符|>(目前处于阶段 1)允许以可读的方式创建链式函数调用。基本上,管道运算符在函数调用中提供语法糖,使用单个参数允许您编写

    '%21' |> decodeURI 而不是decodeURI('%21')

    例如:这就是它的工作原理

    【讨论】:

      猜你喜欢
      • 2012-12-27
      • 1970-01-01
      • 2013-05-07
      • 2015-09-18
      • 2017-03-29
      • 2011-03-16
      • 2011-07-09
      • 2016-07-23
      相关资源
      最近更新 更多