browserify требуют в требуемом файле не может найти модуль

Я пытаюсь упаковать свои угловые js в один скрипт, используя browserify. Это хорошо работает, когда я используюrequire из моего основного файлаapp.js, но когда один из модулей требуется вapp.js содержит свой собственныйrequire, зависимость не входит в мой комплект.

Напомним, вapp.js (ссылка на линию в репо):

require("splash-header");
// more code here

splashHeader.js:

require("social-button-directive");
// more code here

socialButtons.js не имеет зависимостей.

browserify --list app.js не перечисляетsplashHeader.js как положено, а комплектация производится черезbrowserify app.js -o bundle.js не включает в себя JavaScript SocialButton. Поэтому, конечно, если я в любом случае пытаюсь загрузить сайт, я получаюUncaught Error: Cannot find module 'social-button-directive' у splashHeader'srequire('social-button-directive').

Также важно отметить, что я сопоставляю имена модулей с местоположениями файлов, используя опцию «browser» вpackage.jsonи использование browerify-shim, поскольку ни один из моих модулей не совместим с Common-js.

соответствующий разделpackage.json:

"dependencies": {
    "browserify": "~9.0.3",
    "browserify-shim": "~3.8.3"
},
"browserify": {
    "transform": [
        "browserify-shim"
    ]
},
"browserify-shim": {
    "splash-header": {
        "depends": "angular",
        "exports": "angular.module('splash-header').name"
    },
    "social-button-directive": {
        "depends": "angular",
        "exports": "angular.module('social-button-directive').name"
    }
},
"browser":{
    "splash-header": "./ng-modules/splashHeader/splashHeader.js",
    "social-button-directive": "./ng-modules/socialButtons/socialButtons.js"
}

Я был на этом все утро и совершенно тупик. Я сократил оскорбительный проект, чтобы служитьминимальный пример проблемы, Чтобы проверить это, просто установите clone и npm. Если вы смотрите подробно, вотрабочая / не рабочая версия diff.

Я попытался загрузить субмодуль по относительному пути (require('./ng-modules/socialButtons/socialButtons.js) `), не повезло. Возможно, я неправильно подбил вещи? Мой подход к этому исходит изЭта статья.

РЕДАКТИРОВАТЬ: Это, безусловно, моя конфигурация browserify-shim. Все работает после преобразования модулей в commonjs и удаления параметров browserfy-shim из package.json. Я думаю, я просто должен был написать все это, чтобы закрепить это. знак равно

Ответы на вопрос(0)

Ваш ответ на вопрос