使用Javascript检索具有更改名称的嵌套对象的值
我无法从Woocommerce webhook中的对象列表中获取值。 Woocommerce输入所选下拉列表的订单号(即.Royal Mail在下拉列表中排名第5,USPS为第3)所以我需要能够在任何值时访问它。
var labelchoice = event.line_items[0].meta_data[1].value[0].label; // SUCCESS This returns "Custom"
var labelchoice1 = event.line_items[0].meta_data[1].value[0].value[0].value.5.value; // FAILED with "Unexpected Number"
var labelchoice2 = event.line_items[0].meta_data[1].value[0].value.value.5.value; // FAILED with "Unexpected Number"
var labelchoice3 = event.line_items[0].meta_data[1].value[0].value[0].value[0].5.value; // FAILED with "Unexpected Number"
var labelchoice4 = event.line_items[0].meta_data[1].value[0].value[0].value[0].5[0].value; // FAILED with "Unexpected Number"
引用的数字“5”是产品页面上的下拉选项(有8个选项,例如USPS,Airmail等)的编号。这里的问题是我不知道将选择什么号码(客户选择的下拉列表),因此“5”对象可能需要被引用为通配符,因为它可以是1-8中的任何数字。
任何人都可以帮我抓住嵌套的“标签”值吗? - 在示例中显示为“皇家邮政”
"meta_data": [
{
"id": 166,
"key": "Dropdown options",
"value": "Custom"
},
{
"id": 167,
"key": "_WCPA_order_meta_data",
"value": [
{
"type": "select",
"name": "select-1549626172813",
"label": "Custom",
"value": {
"5": {
"i": 5,
"value": "UK-RM",
"label": "Royal Mail"
}
},
回答如下:
如果属性名称(5
)未知,可以查询:
var labelchoiceX = event.line_items[0].meta_data[1].value[0].value[
Object.keys(event.line_items[0].meta_data[1].value[0].value)[0]
].label;
使用Javascript检索具有更改名称的嵌套对象的值
我无法从Woocommerce webhook中的对象列表中获取值。 Woocommerce输入所选下拉列表的订单号(即.Royal Mail在下拉列表中排名第5,USPS为第3)所以我需要能够在任何值时访问它。
var labelchoice = event.line_items[0].meta_data[1].value[0].label; // SUCCESS This returns "Custom"
var labelchoice1 = event.line_items[0].meta_data[1].value[0].value[0].value.5.value; // FAILED with "Unexpected Number"
var labelchoice2 = event.line_items[0].meta_data[1].value[0].value.value.5.value; // FAILED with "Unexpected Number"
var labelchoice3 = event.line_items[0].meta_data[1].value[0].value[0].value[0].5.value; // FAILED with "Unexpected Number"
var labelchoice4 = event.line_items[0].meta_data[1].value[0].value[0].value[0].5[0].value; // FAILED with "Unexpected Number"
引用的数字“5”是产品页面上的下拉选项(有8个选项,例如USPS,Airmail等)的编号。这里的问题是我不知道将选择什么号码(客户选择的下拉列表),因此“5”对象可能需要被引用为通配符,因为它可以是1-8中的任何数字。
任何人都可以帮我抓住嵌套的“标签”值吗? - 在示例中显示为“皇家邮政”
"meta_data": [
{
"id": 166,
"key": "Dropdown options",
"value": "Custom"
},
{
"id": 167,
"key": "_WCPA_order_meta_data",
"value": [
{
"type": "select",
"name": "select-1549626172813",
"label": "Custom",
"value": {
"5": {
"i": 5,
"value": "UK-RM",
"label": "Royal Mail"
}
},
回答如下:
如果属性名称(5
)未知,可以查询:
var labelchoiceX = event.line_items[0].meta_data[1].value[0].value[
Object.keys(event.line_items[0].meta_data[1].value[0].value)[0]
].label;