我是从Babel来到Typescript而我正在努力从node_modules
导入一个模块。生成的.js
版本不包含我导入的模块中的代码...在这种情况下browser-cookies。
我使用纱线安装了包裹:yarn add browser-cookies
。然后我尝试导入main.ts
,如下所示:
const cookies = require('browser-cookies');
(function() {
document.forms['number-generator'].addEventListener('submit', (ev) => {
ev.preventDefault();
if(!cookies.get('ab')) {
cookies.set('ab', 'true', { expires: 1 });
}
})
})();
我的package.json
文件位于以下位置:
{
"name": "lucky-lotto-lander",
"version": "1.0.0",
"main": "index.js",
"license": "MIT",
"scripts": {
"build": "tsc src/app.ts --outFile dist/app.js --module amd --watch"
},
"dependencies": {
"@types/node": "^8.0.53",
"browser-cookies": "^1.1.0",
"copyfiles": "^1.2.0"
}
}
生成的main.js
版本如下所示:
var cookies = require('browser-cookies');
(function () {
document.forms['number-generator'].addEventListener('submit', function (ev) {
ev.preventDefault();
if (!cookies.get('ab')) {
cookies.set('ab', 'true', { expires: 1 });
}
});
})();
如何将必要的browser-cookies
代码捆绑到构建中?
答案 0 :(得分:3)
单独使用TypeScript不进行捆绑(将其与Babel进行比较,后者也只是转换,而不是捆绑)。
你需要像Webpack这样的模块捆绑器将它们整合到一个捆绑包中。