Проблема в том, что вы пытаетесь смешать оператор ES5 require
с синтаксисом ES6 для export
. Эти два несовместимы. Вы должны либо использовать одно, либо другое.
Если ваша реализация ES6 с babel
работает нормально, вы должны использовать оператор import
, например, такой:
// exporting like you are at the moment (called a named export):
export const executeCommandWithOutput = (command) =>{
...
}
// importing like so:
import { executeCommandWithOutput } from './renderer/command-executor';
Но если вы Вы используете require
в public/main.js
, ваш оператор export
должен выглядеть примерно так:
exports.executeCommandWithOutput = executeCommandWithOutput
, а ваш require
останется прежним.
Вот статья чтобы помочь вам лучше понять, что происходит, как работает функциональность export
в ES5 и чего вы можете с ее помощью: https://www.sitepoint.com/understanding-module-exports-exports-node-js/
Аналогично с синтаксисом ES6: https://alligator.io/js/modules-es6/