Javascript 下划线模板接受哪些设置?

Javascript 下划线模板接受哪些设置?,javascript,underscore.js,template-engine,Javascript,Underscore.js,Template Engine,该函数接受设置作为第三个参数,允许您更改有关模板工作方式的一些内容,包括使模板更像胡子。但这就是所有设置所能做的吗?能否提供设置对象的键及其含义的完整列表?是否可以将设置编译到模板中(因为data参数在settings之前,似乎随模板提供设置会导致下划线尝试立即应用模板,假设设置是数据)。如果签出带注释的源代码(我强烈推荐它,这里有很多很好的解释),设置的三个选项是求值、插值和转义。下面是指向templateSettings对象的链接: 我不确定我是否完全理解将设置编译到模板中的问题,但您可以

该函数接受
设置
作为第三个参数,允许您更改有关模板工作方式的一些内容,包括使模板更像胡子。但这就是所有设置所能做的吗?能否提供设置对象的键及其含义的完整列表?是否可以将设置编译到模板中(因为
data
参数在
settings
之前,似乎随模板提供设置会导致下划线尝试立即应用模板,假设设置是数据)。

如果签出带注释的源代码(我强烈推荐它,这里有很多很好的解释),设置的三个选项是求值、插值和转义。下面是指向templateSettings对象的链接:

我不确定我是否完全理解将设置编译到模板中的问题,但您可以设置全局模板设置(因此您不必将其作为参数传递给模板方法,如下所示:

_.templateSettings = {
      interpolate: /<%=([\s\S]+?)%>/g,
      evaluate: /<%([\s\S]+?)%>/g
  };
\模板设置={
插入://g,
评估://g
};
很抱歉,如果这没有回答您的问题,但希望注释的源代码能够提供一些帮助

但这就是所有设置所能做的吗

是的,中提到了所有可能的
设置
。您也可以阅读

能否提供设置对象的键及其含义的完整列表

  • interpolate
    :正则表达式匹配应逐字插入的表达式
  • escape
    :用于匹配HTML转义后应插入的表达式的正则表达式
  • evaluate
    :正则表达式匹配应在不插入结果字符串的情况下计算的表达式
  • variable
    :作为属性访问数据的变量名,而不是使用
    with
    语句
是否可以将设置编译成模板


是的。只需为
数据
传递任何falsy值(
null
undefined
false
,…),该方法将返回一个模板函数,而不是立即呈现它。

感谢您提供了详尽的答案:)