AngularJS:控制器内部视图

问题描述 投票:0回答:1

我触发ng-route时遇到控制器负载问题。这是我的主页:

    <!DOCTYPE html>
    <html>
    <head ng-app="testapp">
        <script type="text/javascript" src="angular.js"></script>
        <script type="text/javascript" src="angular-route.js"></script>
<script type="text/javascript" src="app.js"></script>
            <title>XX</title>
    </head>
    <body>
        <nav ng-controller="defaultnav"></nav>
        <div ng-view></div>
    </body>
    </html>

这是我的app.js文件:

 var app = angular.module('testapp', ['ngRoute']);

app.config(function ($routeProvider) {
            $routeProvider.
                when("/", {
                    templateUrl: "index.html"
                })
                .when("/page1", {
                    templateUrl: "page1.html"
                })
        })

在page1.html里面我是这样的inisiate控制器:

<div ng-controller="page1">

</div>

<script type="text/javascript">
    app.controller('page1', function ($scope) {
        // code...
    })
</script>

我不知道处理这个问题的最佳做法。当我编码这个我得到错误[错误,ctrlreg]它说我有关于注册控制器的问题。请给我建议解决这个问题。提前致谢。

angularjs angularjs-controller ng-view angularjs-ng-route angular1.6
1个回答
1
投票
  1. 在JS中,行var app = angular.module('enterprise', ['ngRoute']);中的应用程序名称是enterprise
  2. 在HTML,<head ng-app="testapp">,应用程序名称是testapp。改为<head ng-app="enterprise">
  3. 最佳实践是单独加载javascript。从html中删除js代码并将其保存在单独的文件中并加载它

qazxsw poi在plunker中进行演示。

您可以使用AngularJS ngRoute:

Click here
© www.soinside.com 2019 - 2024. All rights reserved.