Подтвердить что ты не робот

Как реализовать сервис (концепция в AngularJS) -подобный компонент в React

Все:

Я новичок в борьбе с AngularJS. В AngularJS есть инъекция зависимости от службы, которая может предоставить экземпляр службы для обработки данных, обработки и т.д., За исключением операций пользовательского интерфейса. Интересно, как это сделать (или реализовать эту инъекцию) в компоненте React?

Спасибо

4b9b3361

Ответ 1

Я предпочитаю создавать службу в другом файле, который предоставляет "общедоступные" функции через module.exports.

например.

module.exports = {
  foo: function(){ return bar; }
}

который затем ссылается на Компоненты, используя

import myService from './routetoservice/myService'

Ответ 2

Расширение на Ответ Майкла Данна

Это фактический ответ,

  • Шаблон службы не ограничен каким-либо языком программирования или библиотека.

  • Мы можем реализовать эту концепцию на любом языке. Даже мы можем реализовать это в реакции

  • Небольшая услуга может быть создана на сервере или в браузере u в Javascript, который служит для некоторой логической цели

  • Это дает нам преимущества доступности кода, управления кодом, изоляции кода конкретной логики

  • Его очень родной способ для доступности кода, управления кодом, изоляции кода конкретной логики

  • Если мы сравниваем редукцию/поток с услугами, для них также используется сокращение/поток

  • В настоящее время я использую redux и его действия, а также создаю свои крошечные сервисы на ui, когда это необходимо.

  • Не нужно использовать ДРУГИЕ МОДУЛЫ NPM ДЛЯ СОЗДАНИЯ УСЛУГ, просто решение Michael Dunn достаточно

Ответ 4

Реакция кажется философски противоположной услугам в смысле Angular, по-видимому, предпочитая жесткую связь UI и логики.

Но я нашел модуль react-services, который, кажется, предлагает то, что вы после:

• отделите свое состояние компонента и приложения, представив сервисный уровень, который заботится о распространении изменений через ваше приложение.

• управлять зависимостями компонентов явным, проверяемым способом

• нет событий и никакого управления жизненным циклом - все делается автоматически для вас

• он крошечный и понятный - ядро ​​меньше 100 строк кода