如何在React中保持导入的全局变量不变?

问题描述 投票:0回答:1

我是React新手。我试图从常量文件中导入变量,并在函数中使用它。这是我的演示代码。但是,如果我多次调用该函数,则otherCountryList中的国家/地区只会继续附加到COUNTRY_LIST。如何防止这种情况发生,每次调用该函数时,它只会作为新列表附加在COUNTRY_LIST上?

Constants.js:

export const COUNTRY_LIST = ['USA', 'UK', 'SPAIN'];

index.js

import {COUNTRY_LIST} from './constants/constant';  
inputCountry(){
  let countryList = COUNTRY_LIST;
  //let say pushing other country to the countryList 
  for (var c = 0; c < this.otherCountryList.length; c ++){
    countryList.push(c);
  }
  console.log(countryList) //expected output:['USA', 'UK', 'SPAIN', 'AUS', 'JAPAN']
  // real output after called this function twice:['USA', 'UK', 'SPAIN', 'AUS', 'JAPAN', 'AUS', 'JAPAN']
}
javascript reactjs list function variables
1个回答
1
投票

使用此:

const countryList = [...COUNTRY_LIST];

就是这样,没有push或for循环或其他任何操作。它只是复制数组。

© www.soinside.com 2019 - 2024. All rights reserved.