我无法通过AngularJs加载一个简单路径的简单模板

时间:2015-05-27 14:22:49

标签: angularjs angular-routing

与标题一样,我无法正确加载模板。我无法理解问题出在哪里,我得到的唯一错误是“错误:[$ compile:tpload]无法加载模板:/testingBlock.html”

路径:

/mainDirOfTheProject
      /application
      /library
      /webroot
           /javascript: [angularjs.js, angular-route.js, app.js]
           index.html
           testBlock.html

HTML(index.html的):

  <body ng-app="App" ng-controller="MainCTRL as ctrl">
          {{ctrl.nameApp}}
          <div ng-view></div>
    </body>

HTML(testingBlock.html):

   <h1>Just a test</h1>

Javascript(app.js):

    angular
    .module("App", ["ngRoute"])
    .config(config)
    .controller("MainCTRL", MainCTRL);



function MainCTRL($location){
    this.nameApp = "myApp";
}



function config($routeProvider, $locationProvider){ 

    $routeProvider
        .when("/",{
            templateUrl: "/testingBlock.html",
            controller: "MainCTRL"
        })
        .otherwise({redirectTo:"/"});

    $locationProvider.html5Mode({enabled:true, requireBase:false});

}

我把它整理出来了:问题是路由不接受HTML文件而是接受HTM文件。 我尝试使用jQuery ajax调用,它是一样的。

所以问题是,为什么jQuery ajax调用不接受.html文件?

2 个答案:

答案 0 :(得分:0)

尝试在斜线前面使用一个点:

templateUrl: "./testBlock.html",

答案 1 :(得分:0)

应该能够相对于主index.html的路径加载它,请尝试:

templateUrl: "testBlock.html",

如果不起作用,请观看浏览器开发工具中的网络标签,查看其尝试加载模板的路径,并根据需要进行调整。