my_app.run( [ '$templateCache' , function( $templateCache ) {
var template = "" +
"{{ item.name }}" +
"<ul ng-if='item.sub'>" +
"<li ng-repeat='item in item.sub' ng-include=\"'angular-multi-select-item.htm'\"></li>" +
"</ul>" +
"";
$templateCache.put( 'angular-multi-select-item.htm' , template );
}]);
虽然这可以按预期工作,但我觉得它很丑陋(内部带有html的连接字符串)。是否有其他更干净的方法来定义Angular模板的html?
答案 0 :(得分:2)
您对此有何看法?只需在工作目录中创建一个视图html视图文件,然后使用$http
加载它。
$templateCache.put('angular-multi-select-item.htm', $http.get('views/template.html'));
您也可以尝试使用`ng-include? (documentation)并在主视图中添加包含:
<div ng-include="'views/template.html'"></div>