Я хочу создать приложение vue.js с помощью узла webkit (Nw.js).
Приложение должно выполнять двоичный файл, поэтому я сделал
const exec = require("child_process").exec;
exec(
'"C:\\someBin.exe" /someOptions',
(e, stdout, stderr) => {
if (e instanceof Error) {
console.error(e);
throw e;
}
console.log("stdout ", stdout);
console.log("stderr ", stderr);
}
);
Я пробовал с .exec или .spawn, но всегда получаю странные ошибки, например:
TypeError: (0 , n(...).exec) is not a function
Он должен быть связан со мной с помощью vue.js, потому что, когда я тестирую этот код в простом приложении node webkit только с тегом script, он работает!
Есть ли какая-то несовместимость между веб-пакетом (используемым vue.js) и ключевым словом require в nodejs?
При печати содержимого require("child_process") есть несколько вещей, но ничего из того, что я ожидал (нет методов spawn или exec). Кажется, что само требование не работает для этого конкретного случая. Но, как ни странно, он все еще работает для других установленных пакетов npm.
Для создания приложения я использую "npm run build", который создает окончательные файлы непосредственно в каталоге /dist. В этом каталоге я поместил файлы node webkit, поэтому я могу просто запустить оттуда двоичный файл node webkit.
exec
на стороне клиента? Вы не можете выполнить двоичный файл из браузера. Вы также не можете использоватьchild_proccess
безnode core
, так как он должен выполняться только на стороне сервера. - person Ohgodwhy   schedule 06.05.2018