我陷入了一些我尝试在 Angular js 中实现的主干概念。在backbonejs中,我们可以将模板(html页面)添加到特定的div标签中,然后我们可以呈现该div本身。可以在angularjs中做同样的事情吗?将模板添加到 div 并渲染它?</p>
问问题
370 次
2 回答
0
您可以在标签中抛出一个模板,script
并通过 id 从ngInclude
and引用它ngView
:
文档:http ://docs.angularjs.org/api/ng.directive:script
示例:http: //jsfiddle.net/guilleferrer/bxdrA/1/
<div ng-app="">
<script type="text/ng-template" id="/tpl.html">
Content of the template.
</script>
<ng-include src="'/tpl.html'"></ng-include>
</div>
于 2013-05-29T01:38:38.933 回答
0
我建议使用ui-router。它将允许您在模板的根目录中包含多个“视图”。例如
<div ui-view="header"></div>
<div class="container-fluid">
<div class="row-fluid">
<div class="span2 main-menu-span">
<div class="nav-collapse sidebar-nav">
<ul ui-view="nav-bar" class="nav nav-tabs nav-stacked main-menu"></ul>
</div><!--/.well -->
</div>
<div id="content" class="span10" ui-view="main">
<div ui-view="breadcrumbs"></div>
</div>
</div>
</div>
</div>
在您的模块配置对象中:
var tickets = {
name: 'tickets',
url: '/tickets',
abstract: true,
views: {
'header': {
templateUrl: 'header.tpl.html'
},
'nav-bar': {
templateUrl: 'nav-bar.html'
},
}
};
var list = {
name: 'tickets.list',
parent: 'tickets',
url: '',
views: {
'main@': {
templateUrl: 'list.tpl.html',
controller: TicketQueue,
},
},
};
$stateProvider.state(tickets);
$stateProvider.state(list);
于 2013-06-25T22:03:55.137 回答