【发布时间】:2019-12-30 17:46:10
【问题描述】:
我正在尝试在我的电子项目中使用 Webpack 将 Typescript 代码捆绑到我的主进程中(渲染器是一个使用 CLI 管理的 Angular 项目)。
但在我的主要流程中,我依赖于registry-js:
import { enumerateValues, HKEY } from "registry-js";
Registry-js 构建为.node-binary。所以我的问题是如何将它包含在我的捆绑包中?目前我的webpack.config.js 看起来像这样:
const path = require("path");
module.exports = {
entry: "./main.ts",
target: "electron-main",
output: {
path: "./dist-main",
filename: "main.bundle.js",
},
mode: "production",
module: {
rules: [
{
test: /\.ts?$/,
use: "ts-loader",
exclude: /node_modules/,
}
],
},
resolve: {
extensions: [".ts", ".js"],
alias: {
"registry-js": path.join(__dirname, "node_modules/registry-js/build/Release/registry.node"),
}
}
};
当我启动我的应用程序时,我会收到一个TypeError: Cannot read property 'HKEY_LOCAL_MACHINE' of undefined
如何在我的 Webpack 构建中包含二进制文件,以便能够在开发模式和生产构建中运行我的应用程序?
【问题讨论】:
标签: node.js typescript webpack binary electron