如何在Trigger.io应用程序中使用Angular视图模板和本地模板文件?

时间:2014-02-25 15:06:00

标签: javascript angularjs trigger.io

我想创建单独的模板文件,以保持HTML清洁和模块化。 Angular无法提取本地文件以用作模板。

例如,我在src/views/test.html有一个文件,我的src/js/main.js看起来像:

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

app.config(['$routeProvider', function($routeProvider) {

  $routeProvider.when('/', {
    controller: 'TestController',
    templateURL: 'views/test.html'

  $routeProvider.otherwise({
    redirectTo: '/'
  });
}]);

app.controller('TestController', function($scope, $routeParams) {});

但该应用不起作用且模板HTML未被拉入。

我尝试使用forge.file.getLocalforge.file.string,但似乎与template的{​​{1}}选项不兼容,因为它们是异步的。

2 个答案:

答案 0 :(得分:0)

尝试将../views/test.html代替views/test.html作为模板网址。

原因可能是您的目录结构。您的目录结构看起来像这样:

src/

   js/
     main.js

   views/
     test.html

我认为因为main.jstest.html位于同一目录级别,但在不同的文件夹中,main.js不知道views文件夹。

此外,如果您将主角度应用程序放在其他角度js代码“上方”的目录中,它可能会让您的生活更轻松:

src/
  main.js

  js/
    controllers.js
    services.js
    .
    .
    .

  views/
    test.html

当你更熟悉angular时,你应该在Github上查看ng-boilerplate。这是一个回购/项目,向您展示如何以非常干净和有效的方式设置和构建Angular代码。

答案 1 :(得分:0)

事实证明问题是我是一个大写问题。 您必须使用templateUrl,而不是templateURL才能使Angular JS路由器正常工作。