You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AngularJS控制器注册失败问题求助(v1.8.2)

解决AngularJS控制器未注册错误(Error: [$controller:ctrlreg])

核心修复步骤

  • 定义并关联AngularJS模块:控制器必须注册在模块下,不能直接定义。在<head>中添加以下代码(确保在AngularJS库之后加载):

    <script>
    // 定义模块(如果已有站点模块,替换成现有模块名,不要重复定义)
    var app = angular.module('myApp', []);
    // 注册控制器到模块
    app.controller('MyControllerTest', function($scope) {
      // 这里写控制器逻辑,比如绑定测试数据
      $scope.testText = '控制器已正常工作';
    });
    </script>
    
  • 页面根元素绑定模块:在<html>或<body>标签添加ng-app指令,关联定义的模块:

    <html ng-app="myApp">
    
  • 检查控制器引用正确性:使用控制器的元素上,ng-controller的名称必须和注册的完全一致(大小写敏感):

    <div ng-controller="MyControllerTest">
      {{ testText }}
    </div>
    

常见错误排查

  • 未定义模块直接写控制器:AngularJS 1.3+默认禁用全局控制器,必须归属到某个模块
  • ng-app指令缺失或模块名拼写错误
  • 控制器名称大小写不匹配,比如注册MyControllerTest却写成mycontrollertest
  • 脚本加载顺序错误:控制器脚本必须在AngularJS核心库之后加载

内容的提问来源于stack exchange,提问作者Jake0657

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 13:05:17