AngularJS-在单个标记中呈现多个字符串和HTML文件

AngularJS-在单个标记中呈现多个字符串和HTML文件,angularjs,angularjs-ng-include,ng-bind-html,Angularjs,Angularjs Ng Include,Ng Bind Html,我想在一个标记中呈现模板文件(视图+控制器)和多个html字符串。 -所以我有一些字符串,比如 <p>some text</p> 我想将字符串和template.html呈现为一个标记 我已经连接了html字符串,并且可以用 <div ng-bind-html="template" ..></div> 我可以序列化html文件并在ng bind html中呈现它吗?这些文件具有自己的控制器: <div ng-controller="s

我想在一个标记中呈现模板文件(视图+控制器)和多个html字符串。 -所以我有一些字符串,比如

<p>some text</p>
我想将字符串和template.html呈现为一个标记

我已经连接了html字符串,并且可以用

<div ng-bind-html="template" ..></div>

我可以序列化html文件并在ng bind html中呈现它吗?这些文件具有自己的控制器:

<div ng-controller="sampleCtrl">

它们会失去功能吗

注意:元素的顺序很重要!!!例如,我希望呈现字符串,然后呈现文件内容,然后再次呈现字符串


非常感谢

您应该使用指令。这将允许您加载带有关联js文件的html文件。您可以在指令中设置scope.someText并在视图中调用它,例如

 <p>{{someText}}</p>
只需在html中调用指令:

<some-text-directive></some-text-directive>


希望这有帮助。如果我不清楚,请告诉我,我会尽力澄清。

为什么不使用ngInclude?因为我也想添加“test

”之类的字符串,而ng include仅用于URL。不确定,但我认为您需要的是组合控制器和模板的指令。。。我能用一个ngInclude包含多个文件吗?@MaxBerg不能,但你可以在URL上重复ngnclude。非常感谢!!对于多个模板URL也可以这样做吗?例如,如果我想用两个模板连接两个字符串?好的,也许我可以在指令的模板中组合字符串和模板。在指令的模板中,我可以重复ng-over-ng-include并呈现字符串。您也可以使用templateUrl来代替templateUrl。模板只接受html代码而不是指向文件,例如模板:“{{{someText}}

var app = angular.module('myApp');

app.directive('someTextDirective', function(){
    return{
         restrict: 'E',
         templateUrl: 'path/to/html/file.html',
         link:function(scope){
              scope.someText = 'blah';
         }
    }
});
<some-text-directive></some-text-directive>