Angularjs 指令';s templateUrl引用div而不是整个HTML

Angularjs 指令';s templateUrl引用div而不是整个HTML,angularjs,Angularjs,我有一个弹出窗口/对话框列表(包含在divs中),我想将它们放在一个HTML文件中,并从中引用代表这些弹出窗口的不同指令。据我所知,AngularJS指令的templateUrl通常引用HTML文件。是否可以在HTML中为templateUrl引用单个div?如果是,怎么做?如果模板片段很小,可以使用模板:参数而不是模板URL:从JS中引用它们。但是,在我的项目中,我通过templateUrl引用所有模板部分,并使用grunt任务将所有单个HTML文件预加载到一个Javascript文件中,然后

我有一个弹出窗口/对话框列表(包含在
div
s中),我想将它们放在一个HTML文件中,并从中引用代表这些弹出窗口的不同指令。据我所知,AngularJS指令的templateUrl通常引用HTML文件。是否可以在HTML中为templateUrl引用单个div?如果是,怎么做?

如果模板片段很小,可以使用
模板:
参数而不是
模板URL:
从JS中引用它们。但是,在我的项目中,我通过
templateUrl
引用所有模板部分,并使用grunt任务将所有单个HTML文件预加载到一个Javascript文件中,然后由Angular加载到模板缓存中。您可以阅读更多信息。

您可以执行以下操作:

将div添加为
,并添加属性
type=“text/ng template”
id=”“
,然后在设置
templateUrl:
时,从脚本元素传递
id

例如:

HTML:

<script type="text/ng-template" id="template/awesomeDiv.html">
   <div>
      (...)
   </div>
</script>

(...)
指令:

templateUrl:'template/awesomeDiv.html'

注意:
为了使用它,您需要有嵌套的指令,因此父指令包括HTML和所有
div
s,孩子们使用
ng template
'd
div
s

为什么不使用
template:
参数而不是
templateUrl:
?@MichelTome我知道我可以使用
template:
,但为了“干净”,我还想将我的许多弹出窗口放在一个HTML文件中。如果不可能,我还是使用
模板:
。请查看我的答案,然后再了解其他解决方案。