无法将xBee / serialport库集成到Angular7应用程序中

时间:2019-04-02 03:33:30

标签: javascript node.js angular typescript

我正在尝试创建一个GUI,该GUI通过串行端口与xBee设备通信。我正在使用Angular框架,因此可以在https://www.npmjs.com/package/xbee-rx此处包含nodejs xbee-rx库。

当我尝试在angular组件中导入和实例化xBee类时,通过此消息,它给我串行端口节点/模块带来了问题。

 ERROR in ./node_modules/serialport/lib/bindings/linux-list.js
Module not found: Error: Can't resolve 'child_process' in 'C:\Users\Robert B\Desktop\dispFinal\displayProjFinal\node_modules\serialport\lib\bindings'
ERROR in ./node_modules/bindings/bindings.js

以及有关“ fs”,“ path”和“ stream”的类似消息。

我正在将此库用于xbee:https://www.npmjs.com/package/xbee-rx

我看过其他有类似错误的人,例如这篇文章:

Using SerialPort in Electron with Angular fails at build

但是那里提供的解决方案没有帮助,因为我将xBee与serialPort一起使用。

这是尝试导入xBee文件的应用程序组件。

import { Component } from '@angular/core';
import xbeeRx from 'xbee-rx';

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css']
})
export class AppComponent {
  title = 'displayProjFinal';
  xbee;


  constructor() {

    this.xbee = xbeeRx({
      serialport: '/dev/ttyUSB0',
      serialPortOptions: {
          baudRate: 57600
      },
      module: "ZigBee"
  });


  }
}


我知道:

  • xbee-rx取决于串行端口:https://www.npmjs.com/package/serialport

  • serialport及其依赖项由于Angular 6+的处理动态包的方式而出现问题

  • 通过执行Angular(5)-Electron Serialport Support中所示的技巧可以自行修复B,但是我无法将其扩展到由Serialport本身调用的node_modules中。我想知道Angular在这方面是否是一个死胡同,是否应该尝试vue或做出反应以跳过打字稿-> javascript编译问题。

要重新创建:

  • 使用ng-new创建一个角度应用。

  • npm install xbee-rx

  • 尝试将其放入角度分量

0 个答案:

没有答案