Javascript 使用lodash/fp从国家/地区列表中获取货币
我怎样才能从这个包含Lodash的国家/地区数组中获取每个Javascript 使用lodash/fp从国家/地区列表中获取货币,javascript,reactjs,lodash,Javascript,Reactjs,Lodash,我怎样才能从这个包含Lodash的国家/地区数组中获取每个货币的货币数组? 我以前有这个getCurrences函数,但是我不能用它来获取符号,所以现在我制作了这个getCurrenceswithsymbol,但是它制作了重复的东西,像这样{key:,displayName:,currencySymbol:undefined} import { flow, map, uniq, keyBy, compact, pick } from "lodash/fp"; const
货币的货币数组?
我以前有这个getCurrences函数,但是我不能用它来获取符号,所以现在我制作了这个getCurrenceswithsymbol
,但是它制作了重复的东西,像这样{key:,displayName:,currencySymbol:undefined}
import { flow, map, uniq, keyBy, compact, pick } from "lodash/fp";
const countries = [
{
key: "US",
name: "United States",
currency: "USD",
currencySymbol: "$"
},
{
key: "TW",
name: "Taiwan",
currency: "TWD",
currencySymbol: ""
}
];
function getCurrencies(countries) {
const currencies = flow(
map("currency"),
uniq,
compact,
map((each) => ({ key: each, displayName: each }))
)(countries);
return {
asList: currencies,
byKey: keyBy("key", currencies)
};
} // [{key: "USD", displayName: "USD"}, {key: "TW", displayName: "TW"}]
function getCurrenciesWithSymbol(countries) {
const currencies = flow(
map(pick(["currency", "currencySymbol"])),
uniq,
compact,
map((each) => ({
key: each.currency,
displayName: each.currency,
currencySymbol: each.currencySymbol
}))
)(countries);
return {
asList: currencies,
byKey: keyBy("key", currencies)
};
}
//Expected
// [
// { displayName: "USD", key: "USD", currencySymbol: "$" },
// { displayName: "TW", key: "TW", currencySymbol: "" }
// ];
使用\ uqby('currency')
删除阵列的重复数据,然后映射到请求的表单:
const{flow,uniqBy,map}=\;
const getcurrenceswithsymbol=流量(
uniqBy(“货币”),
地图({货币,货币符号})=>({
显示名称:货币,
关键:货币,
货币符号
}))
);
const countries=[{“key”:“US”,“name”:“US”,“currencySymbol”:“$”},{“key”:“TW”,“name”:“Taiwan”,“currencySymbol”:“TWD”,“currencySymbol”:“}];
const result=getcurrenceswithsymbol(国家);
控制台日志(结果)代码>
使用\.uniqBy('currency')
删除阵列的重复数据,然后映射到请求的表单:
const{flow,uniqBy,map}=\;
const getcurrenceswithsymbol=流量(
uniqBy(“货币”),
地图({货币,货币符号})=>({
显示名称:货币,
关键:货币,
货币符号
}))
);
const countries=[{“key”:“US”,“name”:“US”,“currencySymbol”:“$”},{“key”:“TW”,“name”:“Taiwan”,“currencySymbol”:“TWD”,“currencySymbol”:“}];
const result=getcurrenceswithsymbol(国家);
控制台日志(结果)代码>