首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >电子/Webpack不读.node文件

电子/Webpack不读.node文件
EN

Stack Overflow用户
提问于 2021-08-17 04:39:36
回答 1查看 197关注 0票数 0

我正在尝试用electron加载robotjs,但是我一直收到一个恼人的Failed to compile错误。

我使用Vue.js作为接口,如果有关系的话。

错误

代码语言:javascript
复制
 error  in ./node_modules/robotjs/build/Release/robotjs.node

Module parse failed: Unexpected character '�' (1:2)
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
(Source code omitted for this binary file)

我尝试使用node-loaderwebpack添加一个新规则,但没有成功。

代码语言:javascript
复制
import MiniCssExtractPlugin from "mini-css-extract-plugin";

module.exports = {
  mode: "development",
  devtool: "source-map",
  target: "node",
  node: {
    __dirname: false,
  },
  resolve: {
    extensions: [".ts", ".js"],
  },
  module: {
    rules: [
      {
        test: /\.node$/,
        loader: "node-loader",
      },
      {
        test: /\.ts$/,
        exclude: /node_modules/,
        use: {
          loader: "ts-loader",
        },
      },
      {
        test: /\.scss$/,
        use: [MiniCssExtractPlugin.loader, "css-loader", "sass-loader"],
      },
    ],
  },
  plugins: [new MiniCssExtractPlugin()],
};
EN

回答 1

Stack Overflow用户

发布于 2021-08-18 09:58:35

您需要告诉webpack不要将robotjs包含在捆绑包中,而是需要将其作为commonjs模块。

将这一行添加到您的webpack配置文件中:

代码语言:javascript
复制
module.exports = {
  ...
  externals: {
    robotjs: 'commonjs robotjs',
  },
  ...
}

在文档中:https://webpack.js.org/configuration/externals/#string

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68811759

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档