Collections 主干木偶网:视图中未定义参数(数据已定义)

Collections 主干木偶网:视图中未定义参数(数据已定义),collections,requirejs,underscore.js,fetch,marionette,Collections,Requirejs,Underscore.js,Fetch,Marionette,我试图传递给模板的数据在到达下划线时被莫名其妙地忽略了 数据如下: 然而,我在控制台中得到一个异常,参数url未定义: 未捕获引用错误:未定义url 如果我再深入一点,就会得到一些看起来很疯狂的javascript: 它会在以下之后立即失败:\uu p+='\n\t\t通常在编译的模板中会有一个带(obj |{})。我在你的手机中没有看到,所以可能在某个地方使用了: 默认情况下,template通过with语句将数据中的值放入本地范围。但是,可以使用变量设置指定单个变量名 例如,如果您: v

我试图传递给模板的数据在到达下划线时被莫名其妙地忽略了

数据如下:

然而,我在控制台中得到一个异常,参数
url
未定义:

未捕获引用错误:未定义url

如果我再深入一点,就会得到一些看起来很疯狂的javascript:


它会在以下之后立即失败:
\uu p+='\n\t\t通常在编译的模板中会有一个
带(obj |{})
。我在你的手机中没有看到,所以可能在某个地方使用了:

默认情况下,template通过
with
语句将数据中的值放入本地范围。但是,可以使用变量设置指定单个变量名

例如,如果您:

var t = _.template('<%= x %>');
但如果你说:

var t = _.template('<%= x %>', null, { variable: 'E' });
var t=..template('',null,{variable:'E'});
查看
t.source
,您将看到相同的结构,没有
,在函数的内部有

演示:


模板函数的结构表明您在某个地方有
{variable:'E'}
,因此您的模板应该是
,而不仅仅是

,“外观疯狂的javascript”是模板的编译版本。如果模板上显示
,则必须向其传递
url
值,否则会出现引用错误。也许jsfiddle.net或jsbin.com上的函数示例会有所帮助。通常在编译的模板中会有一个带(obj |{})
。我在你的模板中没有看到,所以可能在某处使用了(),所以你必须在模板中说
或类似的话。@muistooshort,你完全正确
E.url
。多痛苦啊!谢谢你能抓住它。@muistoshort,你能把它写进一个答案里,这样我就可以批准/解决这个问题了吗?
var t = _.template('<%= x %>', null, { variable: 'E' });