javascript - Att tala om för typescript att inte lägga till ["default'] till ny klass
TypeScript-kod
import ModbusRTU from 'modbus-serial';
var modbus = new ModbusRTU();
modbus.connectTCP("192.168.1.5", { port: 502 });
modbus.setID(1);
setInterval(function() {
modbus.writeRegister(2048, 2);
}, 100);
transpiler till
"use strict";
exports.__esModule = true;
var modbus_serial_1 = require("modbus-serial");
var modbus = new modbus_serial_1["default"](); // <-- HERE
modbus.connectTCP("192.168.1.5", { port: 502 });
modbus.setID(1);
setInterval(function () {
modbus.writeRegister(2048, 2);
}, 100);
Men koden fungerar endast utan ["default"] vid klassinstansiering - på detta sätt
"use strict";
exports.__esModule = true;
var modbus_serial_1 = require("modbus-serial");
var modbus = new modbus_serial_1(); // <-- HERE
modbus.connectTCP("192.168.1.5", { port: 502 });
modbus.setID(1);
setInterval(function () {
modbus.writeRegister(2048, 2);
}, 500);
Hur man berättar för transpilaren att inte lägga till det i koden?
Svar #1
Om någon annan stöter på det här problemet. Det verkar som att exporterna från det här biblioteket är lite felaktiga. Jag öppnade ett ärende här och en pull-begäran för att fixa det här.
Redigera: Min patch har tillämpats på detta bibliotek, därför borde detta problem inte uppstå i framtiden :)