serialport.js 未定义的 ansi 流
serialport.js undefined ansi stream
我正在尝试使用 serialport.js
,即使现在只包含它也会导致运行时错误 TypeError: undefined is not an object (evaluating 'stream._ansicursor')
。
var React = require('react')
var SerialPort = require('serial port')
它的上下文在 react
应用程序中,因此它是从 jsx
编译而来的。我不知道这个错误是什么或如何产生的,查看错误中给出的行,它来自来自串行 port.js.
的代码
/**
* Creates a Cursor instance based off the given `writable stream` instance.
*/
function ansi (stream, options) {
if (stream._ansicursor) {
return stream._ansicursor
} else {
return stream._ansicursor = new Cursor(stream, options)
}
}
module.exports = exports = ansi
您尝试使用的串口包在 nodejs 流上运行,这意味着它需要 运行 在服务器上的 nodejs 上下文中。
根据您尝试使用串行端口包执行的操作,如果您想继续使用基于 React 的 Web UI 来完成此任务,您将需要分离出串行端口操作和使用 nodejs 框架编写 API。我建议像 ExpressJS 这样的东西。
通过这种方式,您可以向 API url 发送请求,这些 url 将在服务器上执行串行端口任务,并且 return JSON 反馈您的 Web 应用程序,用 React 编写,可以交互与.
我正在尝试使用 serialport.js
,即使现在只包含它也会导致运行时错误 TypeError: undefined is not an object (evaluating 'stream._ansicursor')
。
var React = require('react')
var SerialPort = require('serial port')
它的上下文在 react
应用程序中,因此它是从 jsx
编译而来的。我不知道这个错误是什么或如何产生的,查看错误中给出的行,它来自来自串行 port.js.
/**
* Creates a Cursor instance based off the given `writable stream` instance.
*/
function ansi (stream, options) {
if (stream._ansicursor) {
return stream._ansicursor
} else {
return stream._ansicursor = new Cursor(stream, options)
}
}
module.exports = exports = ansi
您尝试使用的串口包在 nodejs 流上运行,这意味着它需要 运行 在服务器上的 nodejs 上下文中。
根据您尝试使用串行端口包执行的操作,如果您想继续使用基于 React 的 Web UI 来完成此任务,您将需要分离出串行端口操作和使用 nodejs 框架编写 API。我建议像 ExpressJS 这样的东西。
通过这种方式,您可以向 API url 发送请求,这些 url 将在服务器上执行串行端口任务,并且 return JSON 反馈您的 Web 应用程序,用 React 编写,可以交互与.