在包中包括来自node_modules的模块

时间:2019-12-02 19:39:50

标签: typescript visual-studio-code

我对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";

0 个答案:

没有答案