【发布时间】:2017-10-24 11:27:40
【问题描述】:
我正在尝试使用 Angularjs 和 ui.router 制作单页应用程序, 但我的代码不起作用。
index.html:
<html>
<head>
<script data-require="jquery@*" data-semver="3.1.1" src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script data-require="angular.js@1.4.9" data-semver="1.4.9" src="https://code.angularjs.org/1.4.12/angular.js"></script>
<script src="uirouter.js"></script>
<script src="route.js"></script>
<link rel="stylesheet" href="style.css" />
<script src="script.js"></script>
</head>
<body>
<div ui-view></div>
<script src="NABHController.js"></script>
<script src="nabh1Controller.js"></script>
<script src="nabh2Controller.js"></script>
</body>
</html>
route.js:
var compliance=angular.module('ikomplianzNABH',['ui.router']);
compliance.run(function($rootScope, $state) {
$rootScope.$state = $state;
});
compliance.config(function($stateProvider, $urlRouterProvider,$locationProvider) {
$urlRouterProvider.otherwise('/');
$stateProvider
.state('/', { /*....This state defines All type of user login...*/
url: '/',
templateUrl: 'NABH.html',
controller: 'NABHController'
})
.state('.nabh1', { /*....This state defines All type of user login...*/
url: '/nabh1',
templateUrl: 'nabh1.html',
controller: 'nabh1Controller'
})
.state('.nabh2', { /*....This state defines All type of user login...*/
url: '/nabh2',
templateUrl: 'nabh2.html',
controller: 'nabh2Controller'
})
});
当用户在此处键入 URL http://localhost/test/ 时,NABH.html 页面应呈现。 inisde 这个文件有一个链接可以路由到另一个页面,但是这个页面应该呈现在 NABH.html ui-view 而不是索引页面中。
NABH.html:
<div>
<div ui-view>
<div class="clecklist">
<a ui-sref=".nabh2">Click Me</a>
</div>
</div>
</div>
当用户点击Click Me 时,nabh2.html 应呈现到此页面中。
nabh2.html:
h1>{{msg}}</h1>
就我而言,什么都没有发生。这里只有我需要将NABH.html 设置为父视图,并且nabh1.html,nabh2.html 都应该用作它的子视图。 My full Plunkr code 在这里。
【问题讨论】:
标签: javascript angularjs angular-ui-router