我对VSC有点陌生。我正在使用“ ES2015”和“ system”编译/编译TypeScript代码以创建单个JS文件包。 在这个项目中,我使用的是在node_modules中安装的ThreeJS库(JS模块)。
一切正常,并且编译没有错误,但捆绑文件中未包含ThreeJS模块。仅编译我的代码(来自.ts文件)。
我尝试过从导入整个库开始的多种方式来更改模块导入:
if (chartsExpanded.get(chart) === "collapsed-end" || !chartsExpanded.get(chart)) {
this.setState({
chartsProportions: chartsProportions.set(
chart,
Map({
left: chartProportions.left,
top: chartProportions.top,
width: chartProportions.width,
height: chartProportions.height
})
)
}, () => {
this.setState({
chartsExpanded: chartsExpanded.set(chart, "expanded")
})
})
}
...
<div
className={`box customers-per-sources-count ${
customersPerSourcesCount.loading ? "loading" : ""
} ${
chartsExpanded.get("customersPerSourcesCount")
? chartsExpanded.get("customersPerSourcesCount")
: "collapsed-end"
}`}
ref={el => {
this.chartRefs["customersPerSourcesCount"] = el
}}
style={{
left: chartsProportions.getIn(["customersPerSourcesCount", "left"], "auto"),
top: chartsProportions.getIn(["customersPerSourcesCount", "top"], "auto"),
width: chartsProportions.getIn(["customersPerSourcesCount", "width"], "100%"),
height: chartsProportions.getIn(["customersPerSourcesCount", "height"], "100%")
}}
>
仅导入我需要的零件:
import THREE from "node_modules/three";
但它不起作用。
该库在“ node_modules”中同时包含模块和定义文件。也许我做错了什么,或者它打算像那样工作。 有没有办法在包中包括来自node_modules的模块?
主要原因: -易于维护。我只需要更新一个ThreeJS库。 -库文件将包含在生成的源映射中。 -我试图避免学习有关WebPack之类的额外程序(“与之抗争”)。
这是我最新的tsconfig.json文件(使用TypeScript 3.7.2):
import { Vector3 } from "three";