hmm: AngularJS 1.5 zu Angular 8 migrieren

Hi Leute,

ich versuche gerade ein in Angular 1.5 geschriebenes UI nach AngularJS zu migrieren.

Im ersten Schritt soll man dafür alle AngularJS Controller in Komponenenten umwandeln. Kennt ihr eine gute Beschreibung die zeigt wie das geht? Mir liegen nur Beschreibungen vor die zeigen wie man .ts Controller umwandelt, meine Controller sind aber alle in JavaScript Dateien geschrieben. Beispiel:

(function() {
    'use strict';

    angular
        .module('gdbsuiApp')
        .controller('HomeController', HomeController);

    HomeController.$inject = ['$rootScope','$scope', 'Principal', 'Auth', '$state','$sessionStorage'];

    function HomeController ($rootScope,$scope, Principal, Auth, $state,$sessionStorage) {
        var vm = this;

        vm.account = null;
        vm.isAuthenticated = null;
        vm.login = login;
        $scope.$on('authenticationSuccess', function() {
            getAccount();
        });

        getAccount();

        function getAccount() {
            Principal.identity().then(function(account) {
                vm.account = account;
                vm.isAuthenticated = Principal.isAuthenticated;
            });
        }

        function open () {
            $state.go('home');
        }

        function login (event) {
            event.preventDefault();
            Auth.login({
                           username: vm.username,
                           password: vm.password,
                           rememberMe: false
                       }).then(function () {
                vm.authenticationError = false;

                $state.go('release');

                $rootScope.$broadcast('authenticationSuccess');

                // previousState was set in the authExpiredInterceptor before being redirected to login modal.
                // since login is succesful, go to stored previousState and clear previousState
                if ($sessionStorage.previousStateName) {
                    var previousStateName = $sessionStorage.previousStateName;
                    var previousStateParams = $sessionStorage.previousStateParams;
                    delete $sessionStorage.previousStateName;
                    delete $sessionStorage.previousStateParams;
                    $state.go(previousStateName, previousStateParams);
                }
            }).catch(function () {
                vm.authenticationError = true;
            });
        }
    }
})();
  1. ich versuche gerade ein in Angular 1.5 geschriebenes UI nach AngularJS zu migrieren.

    Im Titel sagst du etwas anderes. Ich nehme an, du willst von AngularJS zu Angular wechseln, sonst wäre es ja ein Downgrade. Ich kenne mich persönlich nicht mit Angular aus, aber hast du es schon mit der offiziellen Dokumentation probiert?

    1. Stimmt, da habe ich mich verschrieben. Angular 1.5 zu Angular 8 ist mein Ziel.

      Genau diese Anleitung benutze ich als Grundlage. Leider steht da nur, dass AngularJS Controller in Angular Komponenten umgeschrieben werden müssen, wie man sowas macht steht das leider nicht.

      1. Tach!

        Genau diese Anleitung benutze ich als Grundlage. Leider steht da nur, dass AngularJS Controller in Angular Komponenten umgeschrieben werden müssen, wie man sowas macht steht das leider nicht.

        Du musst sowieso wissen, wie Angular seit Version 2 arbeitet, wenn du aktualisieren möchtest. Dazu ist es sinnvoll, das Tutorial von vorn zu beginnen. Version 2 war eine komplette Neuentwicklung. Die weiteren Versionssprünge waren mehr oder weniger kleinere Sachen und nicht mehr solch ein Umbruch wie von JS auf 2.

        Wenn du nun weißt, wie man aktuelle Angular-Anwendungen schreibt, weißt du auch, wie ein Controller aussehen muss. Am besten entwickelst du die Anwendung komplett neu, anstatt zu versuchen solche Altlasten zu modernisieren.

        dedlfix.