我正在使用 require.js 将一些模板文件加载到我的应用程序中,如下所示:
define(function(require) {
var App = require('app'),
TeamListTmpl = require('text!templates/team-list.html'),
PlayerListTmpl = require('text!templates/player-list.html'),
PlayerItemTmpl = require('text!templates/player-item.html');
然后,使用 Backbone,我像这样引用模板:
var PlayerItemView = Backbone.View.extend({
tagName: "li",
template: _.template(PlayerItemTmpl),
拥有单独的模板文件有点烦人,我想将所有模板合并到一个 html 文件中并提取单独的元素。我试过这个:
define(function(require) {
var App = require('app'),
Templates = require('text!templates/templates-combined.html');
模板组合的 html 文件如下所示:
<div id="some-element-1">1</div>
<div id="some-element-2">2</div>
<div id="some-element-3">3</div>
但这由于某种原因不起作用:
$(Templates).find("#some-element-1").html();
我也试过:
$('#some-element-1', Templates).html();
有什么方法可以从一个组合文件中提取单个模板文件而不先将其添加到 DOM 中?也许改用javascript模板?任何帮助将不胜感激。