有没有办法根据选择有条件地导出值?
Is there a way to export a value conditionally on a selection?
我有一些非常基本的 Typescript 代码:
export const defaultListingFormValues = {
itemWeight: 1
}
有没有办法将 itemWeight
的默认值更改为基于通过列表表单的下拉列表选择的项目类别的条件?
类似 dress = 0.5, heels = 1, boots = 2, etc.
的内容取决于选择的是哪个选项?
您可以将类别 objects
的 defaultListingFormValues
定义为 { itemWeight: 1, dress: { itemWeight: 1 },... }
。
并将其与下拉列表中的 category
值一起使用,如下所示。这里 categoryFromDropDown 持有 category from dropdown
即 dress
。使用 condition
所以如果任何 category
没有定义那么它将 return default
值。
let defaultValue = defaultListingFormValues[categoryFromDropDown] ?
defaultListingFormValues[categoryFromDropDown].itemWeight :
defaultListingFormValues.itemWeight;
在下面试试。对于演示 export
& import
语句进行了注释。
// export const defaultListingFormValues = {
const defaultListingFormValues = {
itemWeight: 1,
dress: {
itemWeight: 0.5
},
heels: {
itemWeight: 1
},
boots: {
itemWeight: 2
}
}
// When you access
// import defaultListingFormValues from '...';
let categoryFromDropDown = 'dress';
let defaultValue = defaultListingFormValues[categoryFromDropDown] ?
defaultListingFormValues[categoryFromDropDown].itemWeight :
defaultListingFormValues.itemWeight;
console.log(defaultValue);
// category which is not present in defaultListingFormValues.
categoryFromDropDown = 'aaa';
defaultValue = defaultListingFormValues[categoryFromDropDown] ?
defaultListingFormValues[categoryFromDropDown].itemWeight :
defaultListingFormValues.itemWeight;
console.log(defaultValue);
我有一些非常基本的 Typescript 代码:
export const defaultListingFormValues = {
itemWeight: 1
}
有没有办法将 itemWeight
的默认值更改为基于通过列表表单的下拉列表选择的项目类别的条件?
类似 dress = 0.5, heels = 1, boots = 2, etc.
的内容取决于选择的是哪个选项?
您可以将类别 objects
的 defaultListingFormValues
定义为 { itemWeight: 1, dress: { itemWeight: 1 },... }
。
并将其与下拉列表中的 category
值一起使用,如下所示。这里 categoryFromDropDown 持有 category from dropdown
即 dress
。使用 condition
所以如果任何 category
没有定义那么它将 return default
值。
let defaultValue = defaultListingFormValues[categoryFromDropDown] ?
defaultListingFormValues[categoryFromDropDown].itemWeight :
defaultListingFormValues.itemWeight;
在下面试试。对于演示 export
& import
语句进行了注释。
// export const defaultListingFormValues = {
const defaultListingFormValues = {
itemWeight: 1,
dress: {
itemWeight: 0.5
},
heels: {
itemWeight: 1
},
boots: {
itemWeight: 2
}
}
// When you access
// import defaultListingFormValues from '...';
let categoryFromDropDown = 'dress';
let defaultValue = defaultListingFormValues[categoryFromDropDown] ?
defaultListingFormValues[categoryFromDropDown].itemWeight :
defaultListingFormValues.itemWeight;
console.log(defaultValue);
// category which is not present in defaultListingFormValues.
categoryFromDropDown = 'aaa';
defaultValue = defaultListingFormValues[categoryFromDropDown] ?
defaultListingFormValues[categoryFromDropDown].itemWeight :
defaultListingFormValues.itemWeight;
console.log(defaultValue);