Node.js npm包与Web包捆绑不正确
我试图在使用electron&webpack的项目中使用Node.js npm包与Web包捆绑不正确,node.js,webpack,electron,node-modules,webpack-4,Node.js,Webpack,Electron,Node Modules,Webpack 4,我试图在使用electron&webpack的项目中使用文件图标节点_模块 当我在一个简单的js文件中使用该包时,该模块工作正常(没有绑定器): my file.js const fileIcon = require('file-icon'); const buffer = await fileIcon.buffer('path/to/some/file') 然而,当我将这个包与webpack一起使用时,我得到了一个错误 意见: 文件图标节点模块目录如下所示: 文件图标 ├── 文件图标最好的
文件图标
节点_模块
当我在一个简单的js文件中使用该包时,该模块工作正常(没有绑定器):
my file.js
const fileIcon = require('file-icon');
const buffer = await fileIcon.buffer('path/to/some/file')
然而,当我将这个包与webpack
一起使用时,我得到了一个错误
意见:
文件图标
节点模块目录如下所示:文件图标
├── 文件图标最好的方法是使上游模块更改为不使用动态表达式进行路径解析。Webpack stats输出可能已经警告您-当导入发生时,Webpack预先计算要包含在捆绑包中的路径,因此解析路径中的任何动态值表达式都可能导致无法包含这些值,因为Webpack无法确定模块的位置。immediate解决方法是将此模块指定为外部模块,不要将其捆绑。谢谢@OJKwon!反应非常彻底<代码>外部:{file icon':'commonjs file icon'}
解决了我的问题!最好的方法是使上游模块更改为不使用动态表达式进行路径解析。Webpack stats输出可能已经警告您-当导入发生时,Webpack预先计算要包含在捆绑包中的路径,因此解析路径中的任何动态值表达式都可能导致无法包含这些值,因为Webpack无法确定模块的位置。immediate解决方法是将此模块指定为外部模块,不要将其捆绑。谢谢@OJKwon!反应非常彻底<代码>外部:{file icon':'commonjs file icon'}解决了我的问题!
file-icon
├── file-icon <----this is a .bin executable
├── index.js
├── license
├── package.json
└── readme.md