1 | var setupDefaults = require('./setupDefaults')
|
2 |
|
3 | var toValueString = require('./toValueString')
|
4 | var trim = require('./trim')
|
5 |
|
6 | var get = require('./get')
|
7 |
|
8 | /**
|
9 | * 解析动态字符串模板
|
10 | * @param {atring} str 字符串模板
|
11 | * @param {any | any[]} args 对象
|
12 | * @param {any} options
|
13 | */
|
14 | function template (str, args, options) {
|
15 | return toValueString(str).replace((options || setupDefaults).tmplRE || /\{{2}([.\w[\]\s]+)\}{2}/g, function (match, key) {
|
16 | return get(args, trim(key))
|
17 | })
|
18 | }
|
19 |
|
20 | module.exports = template
|