UNPKG

javascriptx

Version:

javascript 基础库扩展

50 lines (38 loc) 1.52 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _renderText = require('./renderText'); var _renderText2 = _interopRequireDefault(_renderText); var _resovles = require('./resovles'); var _resovles2 = _interopRequireDefault(_resovles); var _isEmpty = require('./isEmpty'); var _isEmpty2 = _interopRequireDefault(_isEmpty); var _toString = require('./toString'); var _toString2 = _interopRequireDefault(_toString); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } // Object var renderRecord = function renderRecord(text, object, rewrite) { if (!text || (0, _isEmpty2.default)(object)) { return text; } var expressions = (0, _resovles2.default)(text, '[#', '#]') || []; if (expressions && expressions.length) { for (var i = 0; i < expressions.length; i++) { var expression = expressions[i]; var exp = (0, _renderText2.default)(expression, object, rewrite); try { exp = eval(exp); if ('[#' + expression + '#]' === text) { return exp; } exp = exp === null || exp === undefined ? '' : (0, _toString2.default)(exp); } catch (ex) { console.log(exp, ex); } text = text.toString().replace('[#' + expression + '#]', exp); } } return (0, _renderText2.default)(text, object, rewrite); }; exports.default = renderRecord;