awesome-typescript-loader:空数组的传播返回空数组
Posted
技术标签:
【中文标题】awesome-typescript-loader:空数组的传播返回空数组【英文标题】:awesome-typescript-loader: spread of empty array returns empty array 【发布时间】:2019-02-03 00:13:28 【问题描述】:嗯,一切都很棒,直到我开始传播空数组以呈现几个类似的依赖索引的组件。
我写了这行代码(和往常一样):
[...Array(3)].map((_, i) => ...) // return something, you know
或者,相对而言
[...Array(3)].map((_, i) => i)
我期待什么以及正常行为是什么(例如在 Chrome 的控制台中,或者在我来到 Typescript 之前 Babel 做了什么):
[0, 1, 2]
我在我的 React TypeScript 应用程序中得到了什么(使用 webpack-dev-server
和 awesome-typescript-loader
):
[empty x 3]
我走得更深了。我从我的应用程序中登录[...Array(3)]
,然后在 Chrome 的控制台中登录。我得到了什么:
[undefined, undefined, undefined] // from Chrome's console
[empty x 3] // from my app
显然,这个烦人的事情不允许我在没有变通办法/第三方的情况下渲染依赖索引的组件。 那么,是我做错了什么,还是这是一个错误?
部分配置:
test: /\.tsx?$/,
loader: "awesome-typescript-loader",
exclude: /node_modules/
,
enforce: "pre",
test: /\.js$/,
loader: "source-map-loader"
,
版本:
"awesome-typescript-loader": "^4.0.0",
"typescript": "^3.0.1",
"webpack": "^3.10.0",
"webpack-dev-server": "^2.11.1",
【问题讨论】:
【参考方案1】:嗯,还有另一个名为downlevelIteration
的编译器选项。当
"downlevelIteration": true
补充:
如果你想传播htmlCollection
或类似的东西(例如NodeList
),你应该在lib
选项中包含dom.iterable
,例如:
"lib": ["es6", "dom", "dom.iterable"]
【讨论】:
以上是关于awesome-typescript-loader:空数组的传播返回空数组的主要内容,如果未能解决你的问题,请参考以下文章
awesome-typescript-loader 不接受 JSON 中的更改