2016-10-26 5 views
-1

У меня есть устаревшее приложение, написанное в угловом 1, которое необходимо исправить.Миграция в угловой 2

Я должен написать модульные тесты для того, чтобы сделать какие-либо изменения в приложение, так что мои вопросы:

  1. Есть ли рамки вы можете использовать для написания модульных тестов, которая работает в угловом 1 и 2, не изменяя их (или не слишком много).
  2. Как перенести вещь? администрация говорит, что она должна держаться на угловой 1, но я считаю, что угловой 1 не так хорош, как угловые два (возможно, потому что 2 напоминает мне больше реагировать, а я - разработчик реакции). Дело в том, что каждая отдельная страница имеет модуль, контроллер и представление (да каждая отдельная страница), нет никаких компонентов многократного использования, но он использует маршрутизацию API истории (каким-то запутанным образом), если да, то как я могу изменить страницу на чтобы использовать угловой 2 вместо 1?

eg. Модуль

angular.module('catmodule') 
.config(function ($stateProvider) { 
    $stateProvider 
    .state('cats', { 
     url: '/cats', 
     templateUrl: 'cats/cats.html', 
     controller: 'CatsCtrl', 
     authenticate: true 
    }); 
}); 

контроллер:

angular.module('catmodule') 
.controller('CatsCtrl', function ($scope, $http, $firebaseObject) { 
    $scope.catNumber = 10; 

    //Main spagetthi here... D: 
}); 

вид:

<div>we got {{catNumber}} cats</div> 

мне нужны некоторые грубые идеи, не нужно быть конкретными; В любом случае, я должен все выяснить.

ответ

0

Нет таких вещей, как универсальные тесты, вам нужно будет написать разные, но это не значит, что вы не можете копировать или повторно использовать часть логики. Лучшее, что вам нужно сделать, следует за official migration guide. Вы можете использовать две разные версии. Но самая сложная задача - настроить Webpack и все инструменты, если вы к этому не привыкли.

Мой совет? Не пытайтесь исправить то, что не сломано. Угловая 1 используется с 2009 года, с тех пор многое изменилось, но она по-прежнему является хорошей основой. Если администрация не желает переходить на Угловое 2, и у вас нет поддержки, просто продолжайте делать Угловые 1.

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

Смежные вопросы