打字稿中的“三个点”是啥意思?
Posted
技术标签:
【中文标题】打字稿中的“三个点”是啥意思?【英文标题】:What does the "three dots" in typescript type mean?打字稿中的“三个点”是什么意思? 【发布时间】:2019-10-24 13:16:52 【问题描述】:我今天在 Typescript 中遇到了一些问题。
这个类型中的三个点是什么意思?我根本找不到任何可以解释这一点的东西。
知道是 Redux 的 combineReducers 函数返回的类型推断
编辑:我编辑了图片,以便我们看得更清楚。
EDIT2:我在这里添加代码,我正在尝试做这样的事情
let all: readonly [key: string]: (...args: any) => any =
form,
metadatas_reducer,
loader_reducer
const combinedReducer = combineReducers(all)
谢谢。
【问题讨论】:
查看这篇文章codeburst.io/javascript-es6-the-spread-syntax-f5c35525f754希望这会如你所愿地解释 另一个链接:dev.to/sagar/three-dots---in-javascript-26ci 这不是扩展运算符,这是打字稿语法 为什么您的图片在其他文本之上显示文本?这是某种工具提示/弹出窗口吗?如果是这样,你在悬停什么,你知道它的实际类型是什么吗? 那些只是文本省略号,它不会扩展。在 vscode tooltips 中你永远不会看到任何可扩展的。还有其他地方 vscode 显示文本省略号(特别是在类/接口的层次结构深处使用泛型类型时),它只是意味着更多(与打字稿语法无关) 【参考方案1】:这是 TypeScript 扩展运算符: https://howtodoinjava.com/typescript/spread-operator/
这也可以解构传入的数组和字典,因此您可以通过这样做合并两个字典:
> a = [1,2,3]
[ 1, 2, 3 ]
> b = [4,5,6]
[ 4, 5, 6 ]
> [a,b]
[ [ 1, 2, 3 ], [ 4, 5, 6 ] ]
> [...a,...b]
[ 1, 2, 3, 4, 5, 6 ]
【讨论】:
以上是关于打字稿中的“三个点”是啥意思?的主要内容,如果未能解决你的问题,请参考以下文章