问题背景:
我第一次使用AngulaJS的UI路由器在我的应用程序中创建两个视图。
问题:
Plunker链接: https://plnkr.co/edit/2XAKa6mDCUyzyOPz2CNK
我觉得我在这里缺少一些简单但我无法获得任何路线来渲染app.js中设置的指定html模板。
最终我希望在点击home.html(search())的提交功能时呈现Update.html模板,但首先我需要能够实际呈现我目前无法实现的单个视图。
我希望路线能够在主页上呈现home.html页面,但不会:
非常感谢任何帮助排序。
app.js:
angular
.module('app', [
'ui.router'
])
.config(['$urlRouterProvider', '$stateProvider', function($urlRouterProvider, $stateProvider) {
$urlRouterProvider.otherwise('/home');
$stateProvider
.state('home', {
url: '/',
templateUrl: 'home.html',
controller: 'HomeController'
})
.state('update', {
url: '/update',
templateUrl: 'Update.html',
controller: 'UpdateController'
})
}])
答案 0 :(得分:3)
简要地看一下你的plunker,看起来你的控制器文件正在创建具有相同名称的新角度应用程序。它们相互重叠,因此.config()
块在最终应用程序中不存在。我更新了这个plunker中的控制器文件,它似乎正在渲染第一个ui视图:
https://plnkr.co/edit/cdpWWOaBJWL3dONtIXzv?p=preview
请注意,在控制器文件中,angular.module('app')
不再具有第二个参数['ui-bootstrap']
,这导致为每个控制器文件创建一个新的角度应用程序。请在angular docs。
请注意,使用angular.module(' myModule',[])将创建模块myModule并覆盖任何名为myModule的现有模块。使用angular.module(' myModule')来检索现有模块。
希望这有帮助!