所以我有一个似乎使用版本控制系统的节点模块。使用nodejs我只使用
const Package = require('package-name').V1;
没有问题。然而,Typescript不喜欢.V1
所以我使用
import { Package } from 'package-name';
符合罚款,但打字稿输出到javascript是
const package_name_1 = require("package-name");
这意味着package_name_1
的任何函数或属性都未定义,因为模块似乎没有加载V1.js
文件(我假设它是如何工作的......)
所以我试过
import * as Package from 'package-name';
但它输出与以前相同的javascript ..
我正在使用的软件包的实际文件夹结构是
-node_modules
--package-name
---client
----v1
----v1.js
v1.js文件看起来像
var PackageV1 = {}
PackageV1.CONSTANTS = require('./v1/constants');
PackageV1.Request = require('./v1/request');
PackageV1.Session = require('./v1/session');
...
module.exports = PackageV1;
当然比如
const Package = require('package-name.V1');
不起作用
错误:找不到模块' package-name.V1'
如何使用typescript方法要求此V1.js
文件/目录?
答案 0 :(得分:0)
正如评论中所暗示的那样
import * as Package from 'package-name';
很好但是在使用包时我必须使用
Package.V1.Request()
而不是
Package.Request()