Rumah >hujung hadapan web >tutorial js >Bagaimana untuk Membetulkan Ralat 'Argumen 'ContactController' bukan fungsi' dalam Angular 1.3 ?

Bagaimana untuk Membetulkan Ralat 'Argumen 'ContactController' bukan fungsi' dalam Angular 1.3 ?

Linda Hamilton
Linda Hamiltonasal
2024-12-01 21:56:14442semak imbas

How to Fix

Isu: Ralat Pengisytiharan Pengawal Global

Angular 1.3 telah menghentikan penggunaan pengisytiharan pengawal global pada skop global. Isu ini nyata sebagai ralat yang menyatakan "Argumen 'ContactController' bukan fungsi, tidak ditentukan," menghalang pengawal daripada ditakrifkan secara global tanpa pendaftaran yang jelas.

Penyelesaian: Daftar Pengawal dengan Sintaks Modul

Untuk membetulkannya, pengawal hendaklah didaftarkan menggunakan sintaks module.controller. Contohnya:

angular.module('app', []).controller('ContactController', ['$scope', function ContactController($scope) {
  // Controller logic
}]);

Sebagai alternatif, anda boleh menyuntik pengawal sebagai fungsi:

function ContactController($scope) {
  // Controller logic
}
ContactController.$inject = ['$scope'];
angular.module('app', []).controller('ContactController', ContactController);

Menghidupkan Globals

Jika anda lebih suka menggunakan pengisytiharan global, anda boleh mendayakannya dengan menetapkan allowGlobals dalam $controllerProvider.

angular.module('app')
  .config(['$controllerProvider', function($controllerProvider) {
    $controllerProvider.allowGlobals();
  }]);

Tambahan Nota

  • Pastikan nama apl anda disertakan dalam arahan ng-app pada elemen akar (cth., ng-app="myApp").
  • Sahkan bahawa skrip yang betul disertakan.
  • Elakkan mentakrifkan modul yang sama dua kali di lokasi yang berbeza, kerana ini boleh menimpa yang didaftarkan sebelum ini entiti.

Atas ialah kandungan terperinci Bagaimana untuk Membetulkan Ralat 'Argumen 'ContactController' bukan fungsi' dalam Angular 1.3 ?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn