alibaba / alibaba/lowcode-engine

i18n 字符串中包含复杂的html标签,会导致文案解析失败

Aperta
#1,964 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
later
Lingua principale
TypeScript
Stelle
15.9k
Fork
2.7k
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

/**
* 用于处理国际化字符串
* @param {*} key 语料标识
* @param {*} values 字符串模版变量
* @param {*} locale 国际化标识,例如 zh-CN、en-US
* @param {*} messages 国际化语言包
*/
export function getI18n(key: string, values = {}, locale = 'zh-CN', messages: Record = {}) {
if (!messages || !messages[locale] || !messages[locale][key]) {
return '';
}
const formater = new IntlMessageFormat(messages[locale][key], locale);
return formater.format(values);
}

上面这个函数在解析
message="You have successfully claimed the coupon. You can visit the console to check the coupon status."
时会失败,导致文案无法显示

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

Inizia dalla funzione getI18n e riproduci il problema usando il messaggio fornito che contiene il complesso tag anchor, quindi esamina come IntlMessageFormat lo analizza. Il lavoro è completato quando il testo internazionalizzato viene visualizzato correttamente per questo messaggio contenente HTML, senza perdere il link del coupon né il testo visualizzato.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
typescript
Ambito
frontend, internationalization
Tipo di issue
Bug
Difficoltà
3/5
Tempo stimato
1-2 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
45/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.