我正在构建一个通过USB / Serialport与设备交互的应用程序。我为此使用React + Electron + node-serialport。我仍然是这个话题的新手。
import SerialPort from 'serialport';
仅此行会立即中断应用程序。
TypeError: exists is not a function
Function.getRoot
node_modules/bindings/bindings.js:169
166 | dir = process.cwd();
167 | }
168 |
> 169 | if (exists(join(dir, 'package.json')) || exists(join(dir, 'node_modules'))) {
| ^ 170 | // Found the 'package.json' file or 'node_modules' dir;
we're done
171 | return dir;
172 | }
问题可能出在我到目前为止创建的我的应用程序上,所以我用create-react-app创建了一个新应用程序来重新创建问题。
create-react-app errorApp
cd errorApp
npm start
工作。
npm install serialport
在App.js中添加了以下内容
import SerialPort from 'serialport'
然后
npm start
=> TypeError
很长一段时间以来,我一直认为Electron和本机模块的处理是问题所在,但我什至没有为此测试安装它。
我对TypeScript毫无头绪,这可能是我的问题。但是我也没有在网上找到任何好的答案。