Open JuanDa237 opened 1 year ago
maybe you can try, usb module version to 1
maybe you can try, usb module version to 1
pnpm i usb@1.x
npm install -S usb@1.8.0
You can also run apply this patch-package
patch
Add this to patch/escpos-usb+3.0.0-alpha.4.patch
diff --git a/node_modules/escpos-usb/index.js b/node_modules/escpos-usb/index.js
index 8c21546..7b3aa42 100644
--- a/node_modules/escpos-usb/index.js
+++ b/node_modules/escpos-usb/index.js
@@ -25,7 +25,7 @@ const IFACE_CLASS = {
function USB(vid, pid){
if (!usb) {
- usb = require('usb');
+ usb = require('usb').usb;
}
EventEmitter.call(this);
@@ -67,7 +67,7 @@ function USB(vid, pid){
*/
USB.findPrinter = function(){
if (!usb) {
- usb = require('usb');
+ usb = require('usb').usb
}
return usb.getDeviceList().filter(function(device){
try{
Then run npx patch-package
in your project.
This worked for me !!
// usb.on('detach', function(device){
// if(device == self.device) {
// self.emit('detach' , device);
// self.emit('disconnect', device);
// self.device = null;
// }
// });
Hi, im fixed this using the latest version of usb. "usb": "^1.8.8"
then use Zadig driver.
Node v18.15.0
"dependencies": { "escpos": "^3.0.0-alpha.6", "escpos-usb": "^3.0.0-alpha.4" }
Code:
const escpos = require('escpos'); escpos.USB = require('escpos-usb');
const device = new escpos.USB(0x2BDF, 0x0280); const printer = new escpos.Printer(device);
device.open(function (error) { if (error) { console.error('Error opening USB device:', error); return; }
});
Error: C:\Users\juan\Desktop\test-printer\node_modules\escpos-usb\index.js:52 usb.on('detach', function(device){ ^
TypeError: usb.on is not a function at new USB (C:\Users\x\Desktop\test-printer\node_modules\escpos-usb\index.js:52:7) at Object. (C:\Users\x\Desktop\test-printer\index.js:5:16)
at Module._compile (node:internal/modules/cjs/loader:1254:14)
at Module._extensions..js (node:internal/modules/cjs/loader:1308:10)
at Module.load (node:internal/modules/cjs/loader:1117:32)
at Module._load (node:internal/modules/cjs/loader:958:12)
at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12)
at node:internal/main/run_main_module:23:47