如何使用javascript生成更短的条件语法
我有两个表单字段,一个是类别下拉列表,另一个是产品下拉列表。基于一个条件,当它为真时,类别和产品都将下拉。若该条件为false,则类别将是相同的下拉列表,但产品将是自动完成搜索字段 在这里,我通过使用更广泛和重复的代码方法获得结果,如下所示如何使用javascript生成更短的条件语法,javascript,arrays,Javascript,Arrays,我有两个表单字段,一个是类别下拉列表,另一个是产品下拉列表。基于一个条件,当它为真时,类别和产品都将下拉。若该条件为false,则类别将是相同的下拉列表,但产品将是自动完成搜索字段 在这里,我通过使用更广泛和重复的代码方法获得结果,如下所示 if(dataSource) { newProductFields = { category_name: { ...productFields.ca
if(dataSource) {
newProductFields = {
category_name: {
...productFields.category_name,
disabled: true
},
product_name: {
...productFields.product_name,
}
};
}
else if(!dataSource) {
newProductFields = {
category_name: {
...productFields.category_name,
disabled: true
},
product_name: productField.product_name
};
}
我想在短于category\u name的情况下,对每个条件使用多次使用
产品名称
值中的条件运算符:
newProductFields = {
category_name: {
...productFields.category_name,
disabled: true
},
product_name: dataSource
? { ...productFields.product_name }
: productField.product_name
};
否则
就足够了;您不需要检查反向条件。至于其余的,将对象保持在条件之外,只更改product\u name
。productFields
vsproductField
是打字错误吗?为什么对{…productFields.product\u name,}
使用扩展语法?为什么不干脆productFields.product\u name
?