Ну, я начал с простого, чтобы понять, что происходит: Итак, у меня есть один плагин, который зависит от jQuery, я бы взял его и просто добавил больше. Однако единственное, что я могу заставить работать, это jQuery сам по себе.
Это ошибка, которую я получаю от терминала:
[13:24:27] { [Error: Cannot find module 'jquery.mixitup.js' from '/Users/antonioortiz/Dropbox/developer_folder/browserify_app/app/_js']
Вот моя установка:
пакет.json
"main": "./app/_js/app.js", //entry point for your app
"browserify": {
"transform": [
"browserify-shim", // Is this supposed to help with the non `node_module` pacakages?
"debowerify"
]
},
"browser": { // This gives browserify the location of your plugin right?
"mixitup": "./bower_components/mixitup/src/jquery.mixitup.js"
},
"browserify-shim": {
"jQuery": "global:jQuery",
"mixitup": {
"depends": "jQuery",
"exports": "mixitup"
}
На базовом уровне предполагается, что browserify-shim
выполняет выборку не «node_modules», верно? Кто-нибудь возражает исправить запись, потому что я не могу настроить это правильно. Но что еще более важно, я хотел бы знать, что происходит!
Спасибо!
ОБНОВЛЕНИЕ
Таким образом, если вы используете var mixitup = require('./../bower_components/mixitup/build/jquery.mixitup.min.js');
в своем файле app.js
, он работает. Но тогда какой смысл в browserify-shim
. Я думал, что это должно было позволить вам использовать сокращенное соглашение:
В моем случае это будет:
var mixitup = require('jquery.mixitup.js');
ОБНОВЛЕНИЕ
Основываясь на предложениях Ника, попробовал это, если я не использовал proxyquireify. У кого есть другой способ. Так как я все еще в сорняках ...
"browser": {
"jQuery": "global:jQuery",
"mixitup": "/app/bower_components/mixitup/src/jquery.mixitup.js",
"Mustache": "/app/bower_components/jquery-Mustache/jquery.mustache.js",
"mustache": "mustache"
}
Но безуспешно...
Также появляется сообщение об ошибке, которое кажется более загадочным, чем последнее:
{ [Error: ENOENT, lstat '/app']
errno: 34,
code: 'ENOENT',
path: '/app',
stream: