首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >带控制器加载外部页面的AngularJS

带控制器加载外部页面的AngularJS
EN

Stack Overflow用户
提问于 2014-03-31 05:19:50
回答 1查看 595关注 0票数 0

我有一个快速的问题,关于加载外部页面的路由。我对AngularJS很陌生。

代码语言:javascript
运行
复制
var app = angular.module('app', []);
$routeProvider.when('/list', {
    templateUrl: '/list.html'
})

加载页面,但是在list.html中定义了控制器。

list.html:

代码语言:javascript
运行
复制
<script>
app.controller('test', function(){
    console.log('test');
});
</script>

<div ng-controller="test">

</div>

上面的代码会抛出一个错误,因为test是未定义的函数,除非我将app.controller('test')放置到父页面。

所以我不能把控制器放在外部的.html文件上?

以下更新链接:http://plnkr.co/edit/YC6P9W1VfzX8XOyrynCP?p=preview

EN

回答 1

Stack Overflow用户

发布于 2014-05-17 11:10:59

您必须创建一个单独的script.js,并在执行主页或单击链接时加载主html页面。

代码语言:javascript
运行
复制
    index.html

    <!DOCTYPE html>
    <html ng-app="app">
      <head>
        <link rel="stylesheet" href="style.css">
        <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.15/angular.min.js"></script>
        <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.0rc1/angular-route.min.js"></script>
        <script src="script.js"></script>
        <script src="testscript.js"></script>
      </head>
      <body ng-controller="home">
        <h1>Hello Plunker! {{change}}</h1>
        <a href="#/test" ng-click="test()" title="Click Test">Test</a>
        <ng-view></ng-view>
      </body>
    </html>

    testscript.js

    function test2($scope){
          console.log('succeed');
    };

    script.js

    // Code goes here
    var app = angular.module('app', ['ngRoute']);

    app.controller('home', function($scope){
      $scope.change = "change";  

      $scope.test = function(){
        console.log('clicked');
      }
    });

    app.config(function($routeProvider){
      $routeProvider.when('/test', {
          templateUrl: 'test.html',
          controller: function(){
            console.log('here');
          }
      })
    });
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22754114

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档