угловое определение / загрузка / настройка модулей

0

Каковы различия между двумя способами написания кода ниже с точки зрения функциональности?

Я придерживаюсь стиля написания кода.

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

var myApp = angular.module('MainMenuCtrl', ['ngAnimate']);
myApp.controller('MainMenuCtrl', ['$scope', '$http', MainMenu]);

 angular
    .module('MainMenuCtrl', ['ngAnimate'])
    .controller('MainMenuCtrl', ['$scope', '$http', MainMenu]);
  • 0
    единственный способ, которым вторая форма сломает ваш код, - это если некоторый код, который вы не разместили здесь, использовал переменную myApp . Смысл использования второй формы заключается в том, что переменная не является строго необходимой, и при условии, что она имеет обратную сторону возможных коллизий именования, но не имеет дополнительных преимуществ.
  • 0
    Проверьте функцию MainMenu и убедитесь, что $scope является первым аргументом, а $http - вторым аргументом. Любой другой заказ нарушит ваш код.
Теги:

1 ответ

1
Лучший ответ

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

Также вы можете обернуть все компоненты в IIFE и включить "использовать строгую", не заставляя его на каких-либо других скриптах на странице.

Кроме того, для создания и создания строительных лесов нет необходимости устанавливать какие-либо переменные

// in one file
;(function(){

    "use strict";
     // var app wouldn't be available in the next file if it was used here

     angular
        .module('MainMenuCtrl', ['ngAnimate'])
        .controller('MainMenuCtrl', ['$scope', '$http', MainMenu]);
)}();

// in another file
;(function(){    
    "use strict";

     angular
        .module('MainMenuCtrl')
        .controller('AnotherCtrl', ['$scope', '$http',AnotherCtrl]);

)}();

Ещё вопросы

Сообщество Overcoder
Наверх
Меню