这是我最初的js看起来像
// template.js
file: {
template : '<div><h2>Template</h2><p>My paragraph</p></div>';
}
但我需要将其创建为单独的html文件。
<!-- template.html -->
<div>
<h2>Template</h2>
<p>My paragraph</p>
</div>
现在我需要导入并将其分配给脚本的对象(模板)。任何想法如何做到这一点?
// template.js
file: {
template : 'Content Here';
}
答案 0 :(得分:1)
你必须通过AJAX获得它。这将是一个伪承诺(参见:Promise
和$.get()
),该承诺通过文件内容解决:
$.get(templateUrl).then(...)
一个很好的例子是:
// assuming `file` is inside `options`
if (options.file.template == null && options.file.templateUrl != null) {
$.get(options.file.templateUrl).then(function(html) {
options.file.template = html
// continue doing stuff with the newly received html...
});
}
请注意我是如何将它们分成template
和templateUrl
的,但您不必这样做。
注意:如果您尝试使用promise的回调之外的结果,当您尝试访问它时可能会获得undefined
(除非经过一段时间),因此您可能需要将代码组织到适应那个。