如何将i18n本地化文本传入数组属性?编译报错求解
解决i18n文本传入数组属性的编译错误
你的问题出在name属性的赋值语法上:你用了额外的花括号{i18n.t('Stock Data')},这会被JavaScript解析成一个对象字面量,但这个对象的键写法不符合语法规范,所以编译器报错"expected ."。
正确的写法是直接调用i18n.t()方法作为属性值,不需要包裹花括号:
const columns = [ { name: i18n.t('Stock Data'), selector: 'stockSymbol' }, { name: 'Stock Name', selector: 'stockNameEn' } ]
简单说:在JavaScript对象中,给属性赋值表达式(比如函数调用)时,直接写表达式即可。你之前的写法相当于试图创建一个键为i18n.t('Stock Data')的对象,这在语法上不合法——而你实际需要的只是把i18n.t()返回的字符串赋值给name,所以去掉多余的花括号就可以解决问题。
内容的提问来源于stack exchange,提问作者Faizan Naeem
相关产品推荐
相关产品推荐

