Рубрики
Без рубрики

Как преобразовать приложение Angularjs 1.x в App App – один компонент за раз.

Угловые и реагирование являются оба великими каркасами / библиотеками. Угловой обеспечивает определенную структуру MVC (модель, вид, контроллер). РЕАКТ обеспечивает легкий механизм рендеринга на основе изменения состояния. Часто разработчики будут иметь приложение с устаревшим кодом в Angularjs, но они захотят построить новые функции в ReactJS.

Автор оригинала: Shruti Kapoor.

Угловые и реагирование являются оба великими каркасами/библиотеками. Угловой обеспечивает определенную структуру MVC (модель, вид, контроллер). РЕАКТ обеспечивает легкий механизм рендеринга на основе изменения состояния. Часто разработчики будут иметь приложение с устаревшим кодом в Angularjs, но они захотят построить новые функции в ReactJS.

Хотя можно выйти на пенсию приложение Angularjs и построить приложение inventjs с нуля, это не работоспособное решение для крупных приложений. В таких ситуациях легче создать реактивный компонент в изоляции и импортировать его в угловую.

В этом посте я помогу вам создать компонент React в угловом приложении, используя React2angular Отказ

Спланируйте приложение

Вот что мы собираемся сделать –

Дано : Угловое приложение, которое оказывает название города и его главных достопримечательностей.

Цель : Добавьте компонент React в угловое приложение. Компонент React будет отображать изображенное изображение зрения.

План : Мы собираемся создать реактивный компонент, пропустите imageurl через реквизит и отобразить изображение в качестве компонента реагирования.

Давайте начнем!

Шаг 0: иметь угловое приложение

С целью этой статьи давайте сохраним сложность углового приложения простой. Я планирую поездку в евро в 2018 году, отсюда моего углового приложения, по сути, – список мест, которые я хотел бы посетить.

Вот что наш набор данных BucketList похоже:

const bucketlist = [{
  city: 'Venice',
  position: 3,
  sites: ['Grand Canal', 'Bridge of Sighs', 'Piazza San Marco'],
  img: 'https://unsplash.com/photos/ryC3SVUeRgY',
}, {
  city: 'Paris',
  position: 2,
  sites: ['Eiffel Tower', 'The Louvre', 'Notre-Dame de Paris'],
  img: 'https://unsplash.com/photos/R5scocnOOdM',
}, {
  city: 'Santorini',
  position: 1,
  sites: ['Imerovigli', 'Akrotiri', 'Santorini Arts Factory'],
  img: 'https://unsplash.com/photos/hmXtDtmM5r0',
}];

Это то, что angularcomponent.js похоже:

function AngularComponentCtrl() {
  var ctrl = this;
  ctrl.bucketlist = bucketlist; 
};

angular.module('demoApp').component('angularComponent', {
  templateUrl: 'angularComponent.html',
  controller: AngularComponentCtrl
});

И это angularcomponent.html. :

{{item.city}}

I want to see {{sight}}

Супер просто! Может поехать в Санторини прямо сейчас …

Шаг 1: Установка зависимостей

Переход от угловых для реагирования на мир может быть огромной болью в заднице, если ваш редактор не настроен. Давайте сделаем это первым. Мы собираемся установить Lineup Linting первым.

npm install --save eslint babel-eslint

Далее давайте установим React2angular Отказ Если вы никогда не установили RACT, вам нужно будет установить реагировать , React-Dom и опоры также.

npm install --save react2angular react react-dom prop-types

Шаг 2: Создайте компонент React

Теперь у нас уже есть угловой компонент, который оказывает название города. Далее нам нужно сделать избранное изображение. Давайте надо считать, что изображение доступно нам через реквизит (И мы доберемся до того, как реквизит работает всего за минуту). Наш компонент React выглядит так:

import {Component} from 'react';

class RenderImage extends Component {

  render() {
    const imageUrl = this.props.imageUrl;
    return (
      
); } }

Шаг 3: пройти в реквизитах

Помните в Шаг 2 Мы предполагали, что у нас есть изображение, доступное через реквизит . Мы собираемся заполнить реквизит Теперь. Вы можете пройти в зависимости от компонента реагирования, используя реквизит Отказ Имейте в виду, что ни одно из ваших угловых зависимостей не доступно для компонента реагирования. Подумайте об этом таким образом – компонент реагирования похож на контейнер, соединенный с угловым приложением. Если вам нужен контейнер, чтобы наследовать информацию от родителя, вам нужно будет явно провозить его через реквизит .

Итак, пройти в зависимости, мы добавим компонент рендеримаж в угловом и проезде в imageurl Как параметр:

 angular.module('demoApp', [])
.component('renderImage', react2angular(RenderImage,['imageUrl']));

Шаг 4: включить в угловой шаблон

Теперь вы можете просто импортировать этот компонент в угловом приложении, как и любой другой компонент:

{{item.city}}

I want to see {{site}}

ТА ДА! Это магия! Не совсем. Это тяжелая работа и пот. И кофе. Много этого.

Специальный крик на Дэвид Джи Для введения меня до React2angular И помогая мне увидеть свет в конце туннеля, когда я был в колене глубоко в угловом мире.

Ресурсы:

  1. Эта статья помог мне много.
  2. Официальная документация на реакцию

Если эта статья помогла вам, пожалуйста, нажмите на? Кнопка, чтобы она достигла других разработчиков.

Оригинал: “https://www.freecodecamp.org/news/how-to-convert-an-angular-app-to-a-react-app-one-component-at-a-time-ba985eaae66e/”