与标题一样,我无法正确加载模板。我无法理解问题出在哪里,我得到的唯一错误是“错误:[$ 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文件?
答案 0 :(得分:0)
尝试在斜线前面使用一个点:
templateUrl: "./testBlock.html",
答案 1 :(得分:0)
应该能够相对于主index.html的路径加载它,请尝试:
templateUrl: "testBlock.html",
如果不起作用,请观看浏览器开发工具中的网络标签,查看其尝试加载模板的路径,并根据需要进行调整。