我试图让我的头部如何在加载页面时将视图加载到动态模板中。我的应用程序根据设备宽度有不同的模板。目前模板加载没有问题,但当涉及到视图,我不知道如何注入它。Angular - 无法加载视图
<div data-ng-view></div> seems to be empty.
我创建了一个fiddle
再次感谢您的帮助。
我试图让我的头部如何在加载页面时将视图加载到动态模板中。我的应用程序根据设备宽度有不同的模板。目前模板加载没有问题,但当涉及到视图,我不知道如何注入它。Angular - 无法加载视图
<div data-ng-view></div> seems to be empty.
我创建了一个fiddle
再次感谢您的帮助。
这是评论中提到的问题。在ng-include
内使用ng-view
。我拿了你的小提琴,并添加了一个$route.reload()
,它的工作原理。我还必须在您的路由配置中将其重命名为one.html
。
旁注:
你的模板URL应该是:
templateUrl: '/one.html',
这是templateUrl: 'views/steps/one.html',
<script type="text/ng-template" id="/one.html"></script>
012在一个更好的办法
@Jimi UI路由器个
思想是非常友好的,当它自带的“网址”同步逻辑。例如。在UI路由器中,您可以拥有一个抽象状态,可以完成所有工作,并且在URL更改时拥有像root/one
root/two
这样的子状态。ui-router足够智能,可以检测到根在两者中,因此它不会重新加载控制器。这允许你打开$ state.current.name =='root.one'。然后你可以有条件地包含或者只是拥有模板逻辑。它也不会刷新整个ng-view
它只会刷新连接到状态的ui-view
。
ui-router
是一个非常强大的库。除非你看看他们的文档/教程,否则上面的大部分内容都没有意义。
我认为你需要在app.js中做一些配置。请参考下面的代码,我已经完成了一些url映射,我们必须指定controller和templateUrl。
var vrmUI = angular.module('vrmUI', []);
vrmUI.config(function($routeProvider) {
$routeProvider
.when('/', {
controller: 'DashboardController',
templateUrl: 'views/dashboard.html'
})
.when('/change-password', {
controller: 'ChangePasswordController',
templateUrl: 'views/change-password.html'
})
.when('/network-config', {
controller: 'NetworkConfigController',
templateUrl: 'views/network-config.html'
})
.when('/dashboard', {
controller: 'DashboardController',
templateUrl: 'views/dashboard.html'
});
return vrmUI;
});
要使用角度路由,您必须注入ngRoute模块。尝试安装angular-route软件包并将'ngRoute'添加到角度模块依赖项。 – niba
那个小提琴适合我... – Nix
嗨@niba,你只需要使用ngRoute,如果你使用的版本1.2.xxx左右,我相信。 – Jimi