template

最后更新于:2022-04-02 00:07:36

## template + [link](./template "Link to this entry.") + [source](https://github.com/lodash/lodash/blob/4.5.0正式版/lodash.src.js#L12648 "View in source.") + [npm](https://www.npmjs.com/package/lodash.template "See the npm package.") ``` _.template([string=''], [options]) ``` 创建一个预编译模板方法,可以插入数据到模板中 "interpolate" 分隔符相应的位置。 HTML会在 "escape" 分隔符中转换为相应实体。 在 "evaluate" 分隔符中允许执行JavaScript代码。 在模板中可以自由访问变量。 如果设置了选项对象,则会优先覆盖 `_.templateSettings` 的值。 **注意:** 在开发过程中可以使用 [sourceURLs](http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/#toc-sourceurl) 便于调试。 了解更多预编译模板的信息查看 [lodash的自定义构建文档](https://lodash.com/custom-builds) 了解更多 Chrome 沙箱扩展的信息查看 [Chrome的扩展文档](https://developer.chrome.com/extensions/sandboxingEval) ### 参数 1. [string=''] (string) 模板字符串 2. [options] (Object) 选项对象 3. [options.escape] (RegExp) "escape" 分隔符 4. [options.evaluate] (RegExp) "evaluate" 分隔符 5. [options.imports] (Object) 导入对象到模板中作为自由变量 6. [options.interpolate] (RegExp) "interpolate" 分隔符 7. [options.sourceURL] (string) 模板编译的来源URL 8. [options.variable] (string) 数据对象的变量名 ### 返回值 (Function) 返回编译模板函数 ### 示例 ``` // 使用 "interpolate" 分隔符创建编译模板 var compiled = _.template('hello <%= user %>!'); compiled({ 'user': 'fred' }); // => 'hello fred!' // 使用 HTML "escape" 转义数据的值 var compiled = _.template('<%- value %>'); compiled({ 'value': ' ';