Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 当所有依赖项都被注入时,为什么我总是得到$[injector:modulerr]未捕获错误?_Angularjs - Fatal编程技术网

Angularjs 当所有依赖项都被注入时,为什么我总是得到$[injector:modulerr]未捕获错误?

Angularjs 当所有依赖项都被注入时,为什么我总是得到$[injector:modulerr]未捕获错误?,angularjs,Angularjs,下面是我的index.html页面,它有两个按钮,链接到我打算使用角度路由显示的两个不同视图 下面是我的 HTML <!DOCTYPE html> <html> <head> <title>PR_APP</title> <link rel="stylesheet" href="css/style.css"> <script src="https://cdnjs.cloudflare.com/aj

下面是我的index.html页面,它有两个按钮,链接到我打算使用角度路由显示的两个不同视图

下面是我的

HTML

<!DOCTYPE html>
<html>
<head>
    <title>PR_APP</title>
    <link rel="stylesheet" href="css/style.css">
    <script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.6.5/angular.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.6.5/angular-route.js"></script>
    <script src="js/main.js"></script>
    <script src="js/services.js"></script>
</head>
<body ng-app="new_pr_app">
    <h2>Please select an option</h2><br>
    <div ng-controller="view_controller">
        <button id="view_details" ng-click="view()">View Details</button>
    </div>

    <div ng-controller="update_controller">
        <button id="update_details" ng-click="update()">Update Details</button>
    </div>

    <div ng-view>

    </div>

</body>
我有另一个名为services.js的文件,它有一个服务工厂,可以使用http get从json文件获取详细信息

我唯一的问题似乎是上面的main.js,它在每次加载
index.html
时都会给出下面的错误

angular.js:88未捕获错误:[$injector:modulerr]


你的配置是错误的。您传入一个字符串作为第一个参数(和第二个参数),而
.config(..)
函数期望传入一个函数(或数组)

在代码中,您只是忘记将参数包装在数组中。下面是它的外观:

app.config(['$routeProvider','$locationProvider', 
    function($routeProvider,$locationProvider){
        $routeProvider.when("/update",
        {
            templateUrl:"update.html",
            controller: "update_controller"
        })
        .when("/view", 
        {
            templateUrl: "view.html",
            controller: "view_controller"
        });
    }]);

注意
[
]
包装内容

您可以使用以下代码进行检查


请选择一个选项
查看详细信息 更新详细信息 var app=angular.module('new_pr_app',['ngRoute']); app.config(['$routeProvider','$locationProvider',函数($routeProvider,$locationProvider){ $routeProvider.when(“/update”, { 模板:“更新模板” //控制器:“更新控制器” }) .when(“/view”, { 模板:“视图模板” //控制器:“视图\控制器” }); }]); app.controller(“视图\控制器”,函数($scope,$location){ $scope.view=函数(){ $location.path(“/view”); } }); 应用控制器(“更新控制器”,功能($scope,$location){ $scope.update_details=函数(){ $location.path(“/update”); } });
什么是http\U工厂?在将angular.min.js替换为angular之后,发布准确完整的错误。js@JBNizet是min.js的错误,因为angular.js给出的错误太长,未捕获错误:[$injector:modulerr]…udflare.com%2Fajax%2Flibs%2fagnal.js%2F1.6.5%2fagnal.min.js%3A42%3A138)在angular.js:88在angular.js:4957在p(angular.js:410)在g(angular.js:4917)在gb(angular.js:4839)在Uc(angular.js:1970)在xe(angular.js:1855)在angular.js:33826在HTMLDocument.b(angular.js:3468)@Vivz http_factory是我的服务_factory,它发出http get请求并返回json文件中的详细信息。在您将angular.min.js替换为angular.js后,在您的问题中发布准确完整的错误。
app.config(['$routeProvider','$locationProvider', 
    function($routeProvider,$locationProvider){
        $routeProvider.when("/update",
        {
            templateUrl:"update.html",
            controller: "update_controller"
        })
        .when("/view", 
        {
            templateUrl: "view.html",
            controller: "view_controller"
        });
    }]);