【发布时间】:2012-04-18 02:55:07
【问题描述】:
我正在使用通过 AJAX 请求返回的 templateName 动态创建 ember.js 视图:
[{"templateName":"ember/templates/questions/goal/goalType"}]
并将其作为 Ember 视图添加到列表元素中,如下所示:
attachQuestionView: function() {
if (this.questionView != null) {
this.questionView.remove();
}
this.questionView = Ember.View.create({
templateName: Azul.questionCarouselController.get("current").templateName
});
this.questionView.appendTo('#question_li');
},
这似乎几乎完美地工作。它拉入当前问题的模板并将其附加到列表元素,但在其周围留下把手脚本标签,这使其根据用户代理样式不可见:
<li id="question_li">
<div id="ember398" class="ember-view">
</div>
<div id="ember424" class="ember-view">
<script type="text/x-handlebars">
<div id="ember448" class="ember-view">
<div class="btn-group" data-toggle="buttons-radio">
<a href="#" class="btn" data-bindAttr-8="8" data-ember-action="9">Option A</a>
<a href="#" class="btn active" data-bindAttr-10="10" data-ember-action="11">Option B</a>
</div>
</div>
</script>
</div>
</li>
我做错了什么?
【问题讨论】:
-
(edge ember.js 似乎也会发生)
-
能否提供更多代码? (AJAX调用返回的模板,以及在客户端的存储方式)
-
抱歉 - 它不返回模板,而是返回与 ember 应用程序的其余部分一起预交付的模板的 templateName。我将添加该数据结构。