栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

JavaScript下划线模板抛出变量未定义错误

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JavaScript下划线模板抛出变量未定义错误

您曾经能够一口气解析并填写Underscore模板,如下所示:

var html = _.template(template_string, data);

但是从Underscore
1.7.0开始,第二个参数

_.template
包含模板选项:

模板

_.template(templateString, [settings])

将Javascript模板编译为可以评估以进行渲染的函数。[…] settings
参数应为包含任何

_.templateSettings
应覆盖的哈希值。

您必须使用编译模板

_.template
,然后执行返回的函数来填写模板:

var tmpl = _.template(template_string);var html = tmpl(data);// or as a one-liner, note where all the parentheses arevar html = _.template(template_string)(data);

在您的情况下,它看起来像这样:

var V = Backbone.View.extend({  el:'body',  render: function () {    var data = { lat: -27, lon: 153 };    var tmpl = _.template('<%= lat %> <%= lon %>');    this.$el.html(tmpl(data));    return this;  }});var v = new V();v.render();<script src="//cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.3/underscore-min.js"></script><script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script><script src="//cdnjs.cloudflare.com/ajax/libs/backbone.js/1.1.0/backbone-min.js"></script>


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/442053.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号