【发布时间】:2020-10-06 16:33:42
【问题描述】:
我有一个包,用于运行安装后 webpack 脚本。从字面上看,如我的 package.json 中所述
"scripts": {
...
"postinstall": "webpack"
}
webpack 是这样的:
const path = require('path');
const { VueLoaderPlugin } = require('vue-loader')
module.exports = {
target: "node",
entry: {
Core: path.resolve(__dirname,'src/Core.ts')
},
devtool: 'inline-source-map',
output: {
filename: "[name].js",
chunkFilename: "[name].js",
libraryTarget: 'commonjs',
path: path.resolve(__dirname, "dist")
},
externals: {
canvas: "commonjs canvas",
},
resolve: {
extensions: [".js", ".ts"]
},
module: {
rules: [
{
test: /\.js$/,
loader: 'babel-loader',
exclude: /node_modules/,
},
{
test: /\.vue$/,
loader: 'vue-loader',
exclude: /node_modules/
},
{
test: /\.ts$/,
use: [{
loader: 'ts-loader',
options:{
configFile: path.resolve(__dirname,"tsconfig.json")
}
}],
exclude: /node_modules/,
}
]
},
mode: 'development',
plugins: [
new VueLoaderPlugin(),
],
};
当我在包中并运行 postscript 时,它工作正常。当我将包包含在另一个项目中时,我得到一个打字稿错误,我不知道为什么。就像打字稿加载器ts-loader 不工作一样。知道为什么吗?
ERROR in ./src/Core.ts 32:0
Module parse failed: The keyword 'interface' is reserved (32:0)
You may need an appropriate loader to handle this file type, currently no loaders are configured to process this file. See https://webpack.js.org/concepts#loaders
【问题讨论】:
标签: typescript npm webpack package