Я пишу приложение с использованием NW.js и TypeScript. Я хотел бы использовать один класс для каждого файла.TypeScript + NW.js: нужны пространства имен для браузера, нужны commonjs для nodejs. Как получить оба?
Чтобы получить доступ к модулям node.js, мне нужно использовать require()
. Однако контекст document
в модуле require()
d больше не является контекстом браузера document
.
Мне кажется, что мне нужно придерживаться пространств имен, чтобы иметь возможность доступа к DOM браузера из моего приложения.
Как объединить эти два стиля модулей в одном приложении TypeScript? При попытке использовать namespace
вместе с require
, мои типы внезапно теряют видимость через файлы (поскольку компилятор переходит в режим внешнего модуля.)
Спасибо за указатели. Не могли бы вы включить короткую версию решения в ответ, в дополнение к ссылке? Кроме того, как знает веб-пакет, который не требует выполнения и перехода к среде node.js NW.js? – user3779342
Больше не нужно. Ответ заключается в использовании загрузчика модуля, например. WebPack. Вам не нужно использовать веб-пакет, который вы можете использовать для браузера. – basarat
'как webpack знает'. Поскольку он понимает модульную систему commonjs – basarat