- _-chunk
- _-compact
- _-concat
- _-difference
- _-differenceBy
- _-differenceWith
- _-drop
- _-dropRight
- _-dropRightWhile
- _-dropWhile
- _-fill
- _-findIndex
- _-findLastIndex
- _-flatten
- _-flattenDeep
- _-flattenDepth
- _-fromPairs
- _-head
- _-indexOf
- _-initial
- _-intersection
- _-intersectionBy
- _-intersectionWith
- _-join
- _-last
- _-lastIndexOf
- _-nth
- _-pull
- _-pullAll
- _-pullAllBy
- _-pullAllWith
- _-pullAt
- _-remove
- _-reverse
- _-slice
- _-sortedIndex
- _-sortedIndexBy
- _-sortedIndexOf
- _-sortedLastIndex
- _-sortedLastIndexBy
- _-sortedLastIndexOf
- _-sortedUniq
- _-sortedUniqBy
- _-tail
- _-take
- _-takeRight
- _-takeRightWhile
- _-takeWhile
- _-union
- _-unionBy
- _-unionWith
- _-uniq
- _-uniqBy
- _-uniqWith
- _-unzip
- _-unzipWith
- _-without
- _-xor
- _-xorBy
- _-xorWith
- _-zip
- _-zipObject
- _-zipObjectDeep
- _-zipWith
- _-countBy
- _-every
- _-filter
- _-find
- _-findLast
- _-flatMap
- _-flatMapDeep
- _-flatMapDepth
- _-forEach
- _-forEachRight
- _-groupBy
- _-includes
- _-invokeMap
- _-keyBy
- _-map
- _-orderBy
- _-partition
- _-reduce
- _-reduceRight
- _-reject
- _-sample
- _-sampleSize
- _-shuffle
- _-size
- _-some
- _-sortBy
- _-now
- _-after
- _-ary
- _-before
- _-bind
- _-bindKey
- _-curry
- _-curryRight
- _-debounce
- _-defer
- _-delay
- _-flip
- _-memoize
- _-negate
- _-once
- _-overArgs
- _-partial
- _-partialRight
- _-rearg
- _-rest
- _-spread
- _-throttle
- _-unary
- _-wrap
- _-castArray
- _-clone
- _-cloneDeep
- _-cloneDeepWith
- _-cloneWith
- _-conformsTo
- _-eq
- _-gt
- _-gte
- _-isArguments
- _-isArray
- _-isArrayBuffer
- _-isArrayLike
- _-isArrayLikeObject
- _-isBoolean
- _-isBuffer
- _-isDate
- _-isElement
- _-isEmpty
- _-isEqual
- _-isEqualWith
- _-isError
- _-isFinite
- _-isFunction
- _-isInteger
- _-isLength
- _-isMap
- _-isMatch
- _-isMatchWith
- _-isNaN
- _-isNative
- _-isNil
- _-isNull
- _-isNumber
- _-isObject
- _-isObjectLike
- _-isPlainObject
- _-isRegExp
- _-isSafeInteger
- _-isSet
- _-isString
- _-isSymbol
- _-isTypedArray
- _-isUndefined
- _-isWeakMap
- _-isWeakSet
- _-lt
- _-lte
- _-toArray
- _-toFinite
- _-toInteger
- _-toLength
- _-toNumber
- _-toPlainObject
- _-toSafeInteger
- _-toString
- _-add
- _-ceil
- _-divide
- _-floor
- _-max
- _-maxBy
- _-mean
- _-meanBy
- _-min
- _-minBy
- _-multiply
- _-round
- _-subtract
- _-sum
- _-sumBy
- _-clamp
- _-inRange
- _-random
- _-assign
- _-assignIn
- _-assignInWith
- _-assignWith
- _-at
- _-create
- _-defaults
- _-defaultsDeep
- _-findKey
- _-findLastKey
- _-forIn
- _-forInRight
- _-forOwn
- _-forOwnRight
- _-functions
- _-functionsIn
- _-get
- _-has
- _-hasIn
- _-invert
- _-invertBy
- _-invoke
- _-keys
- _-keysIn
- _-mapKeys
- _-mapValues
- _-merge
- _-mergeWith
- _-omit
- _-omitBy
- _-pick
- _-pickBy
- _-result
- _-set
- _-setWith
- _-toPairs
- _-toPairsIn
- _-transform
- _-unset
- _-update
- _-updateWith
- _-values
- _-valuesIn
- _
- _-chain
- _-tap
- _-thru
- _-prototypeSymbol-iterator
- _-prototype-at
- _-prototype-chain
- _-prototype-commit
- _-prototype-next
- _-prototype-plant
- _-prototype-reverse
- _-prototype-value
- _-camelCase
- _-capitalize
- _-deburr
- _-endsWith
- _-escape
- _-escapeRegExp
- _-kebabCase
- _-lowerCase
- _-lowerFirst
- _-pad
- _-padEnd
- _-padStart
- _-parseInt
- _-repeat
- _-replace
- _-snakeCase
- _-split
- _-startCase
- _-startsWith
- _-template
- _-toLower
- _-toUpper
- _-trim
- _-trimEnd
- _-trimStart
- _-truncate
- _-unescape
- _-upperCase
- _-upperFirst
- _-words
- _-attempt
- _-bindAll
- _-cond
- _-conforms
- _-constant
- _-defaultTo
- _-flow
- _-flowRight
- _-identity
- _-iteratee
- _-matches
- _-matchesProperty
- _-method
- _-methodOf
- _-mixin
- _-noConflict
- _-noop
- _-nthArg
- _-over
- _-overEvery
- _-overSome
- _-property
- _-propertyOf
- _-range
- _-rangeRight
- _-runInContext
- _-stubArray
- _-stubFalse
- _-stubObject
- _-stubString
- _-stubTrue
- _-times
- _-toPath
- _-uniqueId
- _-VERSION
- _-templateSettings
- _-templateSettings-escape
- _-templateSettings-evaluate
- _-templateSettings-imports
- _-templateSettings-interpolate
- _-templateSettings-variable
- _-templateSettings-imports-_
- 索引
文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
_-template
_.template([string=''], [options={}])
View in source See the npm package
创建一个预编译模板方法,可以插入数据到模板中 "interpolate" 分隔符相应的位置。 HTML会在 "escape" 分隔符中转换为相应实体。 在 "evaluate" 分隔符中允许执行JavaScript代码。 在模板中可以自由访问变量。 如果设置了选项对象,则会优先覆盖 _.templateSettings
的值。
注意: 在开发过程中,构建_.template
可以使用 sourceURLs, 便于调试。
了解更多预编译模板的信息查看 lodash的自定义构建文档。
了解更多 Chrome 沙箱扩展的信息查看 Chrome的扩展文档。
添加版本
0.1.0
参数
[string='']
(string): 模板字符串.[options={}]
(Object): 选项对象.[options.escape=_.templateSettings.escape]
(RegExp): "escape" 分隔符.[options.evaluate=_.templateSettings.evaluate]
(RegExp): "evaluate" 分隔符.[options.imports=_.templateSettings.imports]
(Object): 导入对象到模板中作为自由变量。[options.interpolate=_.templateSettings.interpolate]
(RegExp): "interpolate" 分隔符。[options.sourceURL='lodash.templateSources[n]']
(string): 模板编译的来源URL。[options.variable='obj']
(string): 数据对象的变量名。
返回
(Function): 返回编译模板函数。
例子
// 使用 "interpolate" 分隔符创建编译模板var compiled = _.template('hello <%= user %>!');compiled({ 'user': 'fred' });// => 'hello fred!' // 使用 HTML "escape" 转义数据的值var compiled = _.template('<b><%- value %></b>');compiled({ 'value': '<script>' });// => '<b><script></b>' // 使用 "evaluate" 分隔符执行 JavaScript 和 生成HTML代码var compiled = _.template('<% _.forEach(users, function(user) { %><li><%- user %></li><% }); %>');compiled({ 'users': ['fred', 'barney'] });// => '<li>fred</li><li>barney</li>' // 在 "evaluate" 分隔符中使用内部的 `print` 函数var compiled = _.template('<% print("hello " + user); %>!');compiled({ 'user': 'barney' });// => 'hello barney!' // 使用 ES 分隔符代替默认的 "interpolate" 分隔符var compiled = _.template('hello ${ user }!');compiled({ 'user': 'pebbles' });// => 'hello pebbles!' // 使用自定义的模板分隔符_.templateSettings.interpolate = /{{([\s\S]+?)}}/g;var compiled = _.template('hello {{ user }}!');compiled({ 'user': 'mustache' });// => 'hello mustache!' // 使用反斜杠符号作为纯文本处理var compiled = _.template('<%= "\\<%- value %\\>" %>');compiled({ 'value': 'ignored' });// => '<%- value %>' // 使用 `imports` 选项导入 `jq` 作为 `jQuery` 的别名var text = '<% jq.each(users, function(user) { %><li><%- user %></li><% }); %>';var compiled = _.template(text, { 'imports': { 'jq': jQuery } });compiled({ 'users': ['fred', 'barney'] });// => '<li>fred</li><li>barney</li>' // 使用 `sourceURL` 选项指定模板的来源URLvar compiled = _.template('hello <%= user %>!', { 'sourceURL': '/basic/greeting.jst' });compiled(data);// => 在开发工具的 Sources 选项卡 或 Resources 面板中找到 "greeting.jst" // 使用 `variable` 选项确保在编译模板中不声明变量var compiled = _.template('hi <%= data.user %>!', { 'variable': 'data' });compiled.source;// => function(data) {// var __t, __p = '';// __p += 'hi ' + ((__t = ( data.user )) == null ? '' : __t) + '!';// return __p;// } // 使用 `source` 特性内联编译模板// 便以查看行号、错误信息、堆栈fs.writeFileSync(path.join(cwd, 'jst.js'), '\ var JST = {\ "main": ' + _.template(mainText).source + '\ };\');
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论