@NickTomlin дал этот ответ, но затем удалил его.
Вы можете использовать external
:
browserify --external react src.js > dest.js
Пример использования API:
var bundler = browserify('src.js');
bundler.external('react');
bundler.bundle();
Это жизнеспособный вариант. external
требуется другой сценарий для предоставления модуля совместимым образом. Вы можете создать такой скрипт следующим образом:
browserify -r react > react.js
env NODE_ENV=production browserify -r react | uglifyjs -m > react.min.js
И в HTML:
<script src="react.js"></script>
<script src="dest.js"></script>
dest.js — это ваш код, кроме реакции. react.js — это просто реакция и ее зависимости.
Нужно больше внешних вещей? Просто добавьте их в дополнение к реакции.
browserify -x react -x react-bootstrap src.js > dest.js
browserify -r react -r react-bootstrap > vendor.js
Вы также можете сделать что-то подобное в package.json
"browser": {"react": "./react-fake.js"}
// ./react-fake.js
try {
module.exports = require('react');
} catch(e){
module.exports = window.React;
}
И скомпилируйте с помощью -x react
. Это позволяет вам принять сборку -r react
и вернуться к глобальному React.
person
Brigand
schedule
24.03.2015