Я работаю над проектом уже несколько месяцев и хотел бы использовать Atom для встраивания приложения. В проекте используется requireJS, и я никогда не сталкивался с проблемой загрузки скриптов в веб-версии или даже в сборке node-webkit, однако с Atom скрипты загружаются неправильно.
Я сделал небольшой пример, чтобы проиллюстрировать проблему. Это сборка для Mac.
https://github.com/cniaulin/загрузка-выпуск
Клонируйте репо, запустите Atom.app. Посмотрите, определен ли момент, если да, cmd + r, вы увидите, что это не всегда так.
Вы можете отобразить консоль с помощью cmd + alt + i
Файлы находятся здесь: Atom.app/Contents/Resources/app/
У кого-нибудь есть решение или обходной путь?
Привет, все, что я знаю о requireJs, это то, что у них есть аналогичный метод require с узлом, который конфликтует, попробуйте использовать requirejs в качестве подстановочного метода.
Рекомендация: используйте npm для установки пакетов/модулей только для Node в каталог проектов node_modules, но не настраивайте RequireJS для просмотра внутри каталога node_modules. Также избегайте использования относительных идентификаторов модулей для ссылки на модули, предназначенные только для Node. Поэтому не делайте что-то вроде require("./node_modules/foo/foo").
ищите дальше http://requirejs.org/docs/node.html
@cniaulin Обходной путь — освободить переменную require
, переименовав ее во что-то другое перед загрузкой require.js
следующим образом:
<script>
if (window.require) {
window.nodeRequire = window.require;
delete window.require;
}
</script>
Вам нужно будет вызвать nodeRequire
везде, где вы хотите вызвать версию Node.js require
.
Я закрываю это, так как не планируется поддерживать requireJS в атомной оболочке.
Самый полезный комментарий
@cniaulin Обходной путь — освободить переменную
require
, переименовав ее во что-то другое перед загрузкойrequire.js
следующим образом:Вам нужно будет вызвать
nodeRequire
везде, где вы хотите вызвать версию Node.jsrequire
.