Electron + Ionic + child_process - PullRequest
       8

Electron + Ionic + child_process

1 голос
/ 27 сентября 2019

Я создаю электронное приложение для запуска в Windows, чтобы переместить робота.(Управляющим устройством должны быть окна по запросу клиента). Оно встроено в Ionic с машинописным шрифтом, и я пытаюсь создать настольное решение с функцией, которая запускает некоторые файлы .exe для перемещения робота в некоторых заранее заданных движениях.Это группа .exe файлов, созданных другим парнем, и они отлично работают при запуске из оболочки.Эти exe-файлы выключают / включают освещение, перемещают руку и т. Д. Сейчас эти exe-файлы работают, и все они находятся в папке C: \ botcontrol \.

Я боролся с узламиchild_process чтобы иметь возможность запускать все эти исполняемые файлы из простого интерфейса.Моя проблема в том, что я не могу включить child_process каким-либо образом без получения ошибки консоли t(...).execFile is not a function.

Я два дня копался в интернете на разных языках о том, как включитьchild_process модуль узла в машинописном приложении 7, но я действительно застрял с этим и не знаю, как его решить, не получив проклятую ошибку выше.Я попытался добавить в tsconfig:

  "map": {
    "child_process": "@node/child_process"
  }

и многие другие попытки конфигурации веб-пакетов, но ни одна из них не сработала для меня.

Сейчас мне нужно добавить 'child_process', чтобы при запуске службы я мог импортировать ее следующим образом:

import { exec,execFile} from "child_process";
...

или

import * as cp from "child_process";
...

Я прочиталИногда мне нужно добавить модуль для экспорта в SystemJS или в конфигурацию webpack, но я не нахожу никакой конфигурации в моем проекте.

Мои зависимости такие в package.json:

...
 "dependencies": {
    "@angular/common": "~8.1.2",
    "@angular/compiler": "~8.1.2",
    "@angular/core": "~8.1.2",
    "@angular/forms": "~8.1.2",
    "@angular/platform-browser": "~8.1.2",
    "@angular/platform-browser-dynamic": "~8.1.2",
    "@angular/router": "~8.1.2",
    "@ionic-native/core": "^5.14.0",
    "@ionic-native/splash-screen": "^5.14.0",
    "@ionic-native/status-bar": "^5.14.0",
    "@ionic/angular": "^4.9.1",
    "@ionic/storage": "^2.2.0",
    "@ngx-translate/core": "^11.0.1",
    "@ngx-translate/http-loader": "^4.0.0",
    "cordova-sqlite-storage": "^3.3.0",
    "core-js": "^2.5.4",
    "electron-json-storage": "^4.1.8",
    "ng-connection-service": "^1.0.4",
    "rxjs": "^6.5.3",
    "simple-keyboard": "^2.26.4",
    "tslib": "^1.9.0",
    "wine": "^0.9.8",
    "zone.js": "~0.9.1"
  },
  "devDependencies": {
    "@angular-devkit/architect": "~0.801.2",
    "@angular-devkit/build-angular": "~0.801.2",
    "@angular-devkit/core": "~8.1.2",
    "@angular-devkit/schematics": "~8.1.2",
    "@angular/cli": "~8.1.2",
    "@angular/compiler": "~8.1.2",
    "@angular/compiler-cli": "~8.1.2",
    "@angular/language-service": "~8.1.2",
    "@ionic/angular-toolkit": "~2.0.0",
    "@types/jasmine": "~3.3.8",
    "@types/jasminewd2": "~2.0.3",
    "@types/node": "^8.10.54",
    "codelyzer": "^5.1.1",
    "electron": "^6.0.10",
    "electron-installer-dmg": "^3.0.0",
    "electron-packager": "^14.0.6",
    "jasmine-core": "~3.4.0",
    "jasmine-spec-reporter": "~4.2.1",
    "karma": "~4.1.0",
    "karma-chrome-launcher": "~2.2.0",
    "karma-coverage-istanbul-reporter": "~2.0.1",
    "karma-jasmine": "~2.0.1",
    "karma-jasmine-html-reporter": "^1.4.0",
    "protractor": "~5.4.0",
    "ts-node": "~7.0.0",
    "tslint": "~5.15.0",
    "typescript": "~3.4.3"
  },
...

Кто-нибудь может мне помочь, пожалуйста?Это будет высоко ценится:)

...