@candybooberr

Reactjs плагины и requirejs, как?

Всем привет. Использую Backbone, React, requirejs. Всё было хорошо, пока не начал ставить плагины подобный react-telephone-input или react-onlickoutside mixin. Ловлю ошибки подобные тому, что плагины не обёрнуты в соответствующий

define(function(require){/* не интересные подробности */});
а просто

var foo = require('bar');
точнее requirejs.org/docs/errors.html#notloaded - там и сказано, что нужно это дело обернуть. Не переписывать же плагины, верно? Кто как с этим борется? Еще один аспект, использую bower, а не npm и тем самым, когда ставлю пакет с зависимостями мне несколько сложнее справить с этим кустом зависимостей. Когда смотрел исходники плагина, видел строки типа

var map = require('lodash/collections/map');
Если ставить через npm - всё так и получается, кроме обёртки, а с bower - всё приходит одним файлом. Заранее благодарю всех за отзывчивость.
  • Вопрос задан
  • 375 просмотров
Решения вопроса 1
AlekseyNemiro
@AlekseyNemiro
full-stack developer
Не переписывать же плагины, верно? Кто как с этим борется?


Использую TypeScript и Visual Studio. Итоговый JavaScript сам собирается в нужном виде, достаточно выбрать систему модулей в свойствах проекта.

Но с некоторыми библиотеками React в AMD возникали проблемы. И да, единственным решением было внесение изменений в код этих компонентов, что не очень хорошо и не факт, что можно будет отделаться парой простых изменений.

В итоге пришлось использовать Webpack. Опыт работы с RequireJS сильно усложнил миграцию и в какие-то моменты я даже пытался прикрутить RequireJS в Webpack :-) Так что про RequireJS лучше полностью забыть.

Реализация с Webpack мне нравится больше, но настроек придется написать много и иногда все это дело глючит. С использованием загрузчиков, на выходе можно получить все что угодно из чего угодно.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
25 нояб. 2024, в 02:45
2000 руб./за проект
24 нояб. 2024, в 23:46
20000 руб./за проект