Backbone.js 下划线.js-未捕获的SyntaxError:意外标记)生成带有变量的模板时
我试图用下划线.js学习Backbone.js,但遇到了麻烦。我使用Grails作为服务器框架,因此下划线.js语法是不可能的。我想把它改成{{}风格。我的Javascript被分成许多文件,每个文件代表我需要的每个对象的视图或模型。以下是我的视图代码:Backbone.js 下划线.js-未捕获的SyntaxError:意外标记)生成带有变量的模板时,backbone.js,underscore.js,Backbone.js,Underscore.js,我试图用下划线.js学习Backbone.js,但遇到了麻烦。我使用Grails作为服务器框架,因此下划线.js语法是不可能的。我想把它改成{{}风格。我的Javascript被分成许多文件,每个文件代表我需要的每个对象的视图或模型。以下是我的视图代码: $(function () { _.templateSettings = { interpolate : /\{\{(.+?)\}\}/g, evaluate : /\{!(.+?)!\}/g
$(function () {
_.templateSettings = {
interpolate : /\{\{(.+?)\}\}/g,
evaluate : /\{!(.+?)!\}/g
};
APP = window.APP || {};
APP.PlaceView = Backbone.View.extend({
initialize:function () {
this.render();
},
el:"#place-form",
formTemplate:_.template($('#search-template').html()),
render:function () {
//Pass variables in using Underscore.js Template
var variables = { street:"Ulica" };
this.$el.html(this.formTemplate({ "street":"Ulica" }));
}
});
var view = new APP.PlaceView();
});
以及模板:
<script type="text/template" id="search-template">
<!-- Access template variables with {{ }} -->
<label>{{ street }}</label>
<input type="text" id="search_input"/>
<input type="button" id="search_button" value="Search"/>
</script>
{{街道}
此代码引发未捕获的SyntaxError:意外标记)错误。但是,当我删除u.templateSettings部分时,一切都正常,但我没有变量
非常感谢。我认为这显示了错误,因为这一行:
<!-- Access template variables with {{ }} -->
下划线试图用一个不存在的变量替换它,从而抛出一个错误。我得到了完全相同的错误,我使用handlebar的语法,因为我使用的是HAML,知道你是如何解决这个问题的吗?这让我发疯了!它不应该出现在示例代码中