我写了一个非常简单的角度js样本,它不起作用,我不明白为什么。
如果有人看到我做错了,请告诉我,如果没有,我应该采取什么步骤来面对它?
这是我的index.html:
<html>
<head>
<script src="/assets/libs/angular-1.4.7.js"></script>
<script src="/assets/libs/angular-ui-router.js"></script>
<script src="app.module.js"></script>
</head>
<body ng-app="example">
This is the index level
<br>
<div ui-view></div>
</body>
</html>
&#13;
这是我唯一的观点(profile.html):
这是个人资料页
这是js文件:
var example = angular.module("example", ['ui.router']);
example.config(function($stateProvider, $urlRouterProvider) {
$stateProvider
.state("profile", {
url: "profile",
templateUrl: "templates/profile"
})
$urlRouterProvider.otherwise("/profile")
});
&#13;
我希望结果是:
This is the index level
This is a profile page
但这就是我得到的:
这是指数水平
所有js文件路径都是正确的,因为我可以在开发人员工具中看到它们。
任何帮助都将深表感谢!
答案 0 :(得分:1)
当您.otherwise
重定向到/profile
时,您应该将状态定义的URL
更改为以下,以便ui-router
将使用正确的模板加载正确的状态。
$stateProvider
.state("profile", {
url: "/profile",
templateUrl: "templates/profile" //make sure this template has correct path
})
答案 1 :(得分:1)
我认为它不适合你,因为templateUrl
并不正确。它应该是文件的正确路径以及文件扩展名(除非您在后端使用某些内容或模板已编译并以templates/profile
命名)但angular会进行XHR调用以获取该文件