i18n-transform-cli
Version:
这是一款能够自动将代码里的中文转成i18n国际化标记的命令行工具。当然,你也可以用它实现将中文语言包自动翻译成其他语言。适用于vue2、vue3和react
27 lines (26 loc) • 768 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.flatObjectDeep = void 0;
const assertType_1 = require("./assertType");
/**
* @example
* 将{a: {bb: 1}} 转成 {'a.bb': 1}
*/
function flatObjectDeep(data) {
const keyValueMap = {};
function collectMap(obj, upperKey) {
Object.keys(obj).forEach((key) => {
const currentKey = upperKey ? `${upperKey}.${key}` : key;
const value = obj[key];
if ((0, assertType_1.isObject)(value)) {
collectMap(value, currentKey);
}
else {
keyValueMap[currentKey] = value;
}
});
}
collectMap(data);
return keyValueMap;
}
exports.flatObjectDeep = flatObjectDeep;