Я пытаюсь исправить ошибку, которая не появляется у других людей, пытающихся запустить этот проект. При запуске я получаю эту ошибку:
The "path" argument must be of type string. Received type object
из строк
const isoPath = electronSettings.get("settings.isoPath");
const fileDir = path.dirname(isoPath);
Оказывается, isoPath
- это объект обещания неперехваченной ошибки типа, который в основном говорит следующее:
Cannot read property "app" of undefined
Далее в коде я обнаружил следующее:
Он пытается получить e.app
, но e
не определено, потому что return (_a = config.electron) !== null && _a !== void 0 ? _a : electron_1.default;
оценивается как истинное, что означает, что либо _a === void 0
, либо (_a = config.electron) === null
, а поскольку _a
не определено, мы можем предположить _a === void 0
, поэтому по какой-то причине config.electron
был определен, но не получил значения - config
определяется как __assign({}, defaultConfig);
.
defaultConfig
:
var defaultConfig = {
atomicSave: true,
fileName: 'settings.json',
numSpaces: 2,
prettify: false,
};
В моем node_modules/
нет settings.json
, который вообще относится к электронным настройкам, что я Я считаю, что это может быть источником моих проблем, но я не вижу, чтобы кто-нибудь в Интернете обсуждал эту проблему.
Для любопытных: файл с проблемой находится в node_modules/electron-settings/dist/settings.js:92:70
, в функции getElectronApp
.
Обратите внимание, что я использую WSL1, хотя в данной ситуации это не должно сильно повлиять.