如何将变量插入从其他文件导入的变量名称中?

时间:2019-03-29 02:04:05

标签: reactjs ecmascript-6 jsx

我想将变量(循环)调用从其他文件导入的const名称。

我想像这样从文件中导入const:

export const p6_q1="AAA";
export const p6_q2="BBB";
export const p6_q3="CCC";
export const p6_q4="DDD";

我已经尝试过:

import React from 'react';
import * as Text from 'textKorean';

const FaqItem = ({obj}) => {
    return (
        <div>
            {console.log(obj)}
            { Text.p6_q`${String(obj)}` }
        </div>
    );
};

export default FaqItem;

道具'obj'很好地显示在我的控制台上。 但是错误消息显示:

  

./ src / FaqItem.js       尝试导入错误:未从“ textKorean”(导入为“ Text”)中导出“ p6_q”。

我希望它是p6_q1。 p6_q2,p6_q3等。

但是我的代码在 { Text.p6_q`${String(obj)}` }说这只是 p6_q

我该怎么做?

1 个答案:

答案 0 :(得分:1)

首先,如果textKorean文件与FaqItem位于同一文件夹中,则可能应将导入更改为import * as Text from './textKorean.js'。 接下来,如果您的obj是一个数组,则必须映射该数组。您应该尝试

{ obj.map(num => Text["p6_q"+num])}