C
C
candybooberr2016-07-18 22:56:40
JavaScript
candybooberr, 2016-07-18 22:56:40

Reactjs plugins and requirejs how?

Hello. I use Backbone, React, requirejs. Everything was fine until I started installing plugins like react-telephone-input or react-onlickoutside mixin. I'm catching errors like plugins not being wrapped in the appropriate
define(function(require){/* not interesting details */});
but just
var foo = require('bar');
more precisely , requirejs.org/docs/errors.html#notloaded - it says there that you need to turn this thing around. Do not rewrite plugins, right? Who is struggling with this? Another aspect, I use bower, not npm, and thus, when I install a package with dependencies, it is somewhat more difficult for me to deal with this dependency hive. When I looked at the plugin sources, I saw lines like
var map = require('lodash/collections/map');
If you install via npm - everything turns out like that, except for the wrapper, and with bower - everything comes in one file. Thanks in advance to everyone for your kindness.

Answer the question

In order to leave comments, you need to log in

1 answer(s)
A
Alexey Nemiro, 2016-07-20
@candybooberr

Do not rewrite plugins, right? Who is struggling with this?

Использую TypeScript и Visual Studio. Итоговый JavaScript сам собирается в нужном виде, достаточно выбрать систему модулей в свойствах проекта.
Но с некоторыми библиотеками React в AMD возникали проблемы. И да, единственным решением было внесение изменений в код этих компонентов, что не очень хорошо и не факт, что можно будет отделаться парой простых изменений.
В итоге пришлось использовать Webpack. Опыт работы с RequireJS сильно усложнил миграцию и в какие-то моменты я даже пытался прикрутить RequireJS в Webpack :-) Так что про RequireJS лучше полностью забыть.
Реализация с Webpack мне нравится больше, но настроек придется написать много и иногда все это дело глючит. С использованием загрузчиков, на выходе можно получить все что угодно из чего угодно.

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question