type height = string
type width = `${number}px`
let q:height = 10 + 'px'
let w:width = `${10}px`
let e:width = 10 + 'px' // error 不能将类型“string”分配给类型`${number}px`
请问为什么 e 会报错,怎么改width 的申明,才能允许e 的通过,并且限制了只有px结尾的字符串可以通过?
type height = string
type width = `${number}px`
let q:height = 10 + 'px'
let w:width = `${10}px`
let e:width = 10 + 'px' // error 不能将类型“string”分配给类型`${number}px`
请问为什么 e 会报错,怎么改width 的申明,才能允许e 的通过,并且限制了只有px结尾的字符串可以通过?
不可以, 目前的ts版本应该还不支持。
在目前的ts版本下,
10 + 'px'
这个表达式会被推断为string
,除非这个表达式推断更智能一些,才有可能