无法使用angularjs 1.2注入视图

时间:2014-04-08 08:54:07

标签: angularjs ng-view

我的代码,如下所示,不会将mg-view替换为路由配置中的模板。 我将'{message}}替换为'in controller',这表示控制器处于活动状态,但没有其他事情发生。

查看:

<!DOCTYPE html>
<html ng-app="app">
<head>          
    <script src="angularjs/angular.js"></script>
    <script src="angularjs/angular-resource.js"></script>
    <script src="angularjs/angular-route.js"></script>

<script src="app.js.html"></script>
</head>
<body class="appearanceOrange styleIOS">

    <section ng-app="app" ng-controller="pageCtrl">
        Current page '{{ message }}'

        <div ng-view></div>
    </section>
</body>
</html>

控制器:

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

app.config(function($routeProvider) {
  $routeProvider
    .when('/corporate', {
      controller:'pageCtrl',
      templateUrl:'corporate.html'
    })
    .otherwise({
      redirectTo:'/corporate'
    });
});

app.controller('pageCtrl', function ($scope) {
    $scope.message = "in controller";

}); 

部分:

<section 
    id="pageCorp"
    class="page"
    title="Corp France"
    background="stripRoll"
    style="text-align:center; display: block;">
    <div style="padding:200px">
        <a href="http://www.corp.fr/go/id/ceeq/" style="color: white">
            <img src="rsc/corp.logo.svg" style="width:150px; margin: auto auto;background-color:white;"/><br/>
            <span style="font-size:18pt;font-weight:bold">visit our Website</span>
        </a>
    </div>
</section>

2 个答案:

答案 0 :(得分:0)

只要你corporate.html中的模板存在,我就可以了。

这是一个有效的fiddle

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

app.config(function($routeProvider) {
    $routeProvider.when('/corporate', {
        controller: 'pageCtrl',
        template: 'hi'
    }).otherwise({
        redirectTo: '/corporate'
    });
});

app.controller('pageCtrl', function($scope) {
    $scope.message = "in controller";
});

修改:这是使用模板的另一种可能性,使用$ templateCache:jsfiddle

app.run(function($templateCache) {
  $templateCache.put('corporate.html', 'This is the content of the template');
});

答案 1 :(得分:0)

经过数小时的调查后,传统的javascript破坏了angularjs。 因此在转换(迁移)到angularjs时要小心,并在进入长期调查期之前先尝试停用旧版javascript代码... 感谢所有帮助过我的人。