对i8n 增加 t(ele) t(ele.label)的识别

This commit is contained in:
Wang Kejun 2023-06-08 12:13:00 +08:00
parent d6c31edd1b
commit 5d91dace5a
1 changed files with 39 additions and 0 deletions

View File

@ -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,