diff --git a/config/babel-plugin/oakI18n.js b/config/babel-plugin/oakI18n.js index 980cf71..05a31ac 100644 --- a/config/babel-plugin/oakI18n.js +++ b/config/babel-plugin/oakI18n.js @@ -43,11 +43,49 @@ module.exports = (babel) => { node2.value && node2.value.indexOf(':') === -1 ) { + // t('d') arguments.splice( index, 1, t.stringLiteral(ns + ':' + node2.value) ); + } else if ( + index === 0 && + t.isIdentifier(node2) && + node2.name && + node2.name.indexOf(':') === -1 + ) { + // t(ele) + arguments.splice( + index, + 1, + t.binaryExpression( + '+', + t.stringLiteral(ns + ':'), + t.identifier(node2.name) + ) + ); + } else if ( + index === 0 && + t.isMemberExpression(node2) && + node2.object.name && + node2.object.name.indexOf(':') === -1 + ) { + // t(ele.label) + arguments.splice( + index, + 1, + t.binaryExpression( + '+', + t.stringLiteral(ns + ':'), + t.memberExpression( + t.identifier( + node2.object.name + ), + t.identifier(node2.property.name) + ) + ) + ); } else if ( index === 0 && t.isTemplateLiteral(node2) && @@ -60,6 +98,7 @@ module.exports = (babel) => { node3.value.raw.indexOf(':') !== -1 ) ) { + // t(`ele`) node2.quasis.splice( 0, 1,