我尝试使用MONEI/Shopify-api-node创建打折券,成功创建了价格规则和价格规则ID。 index.js(node server)
在.then方法priceRule.create中,获取priceRule id后,我不想将响应返回给用户。我想使用priceRule id进行另一个调用,但要使用DiscountCode.create。 在DiscountCode.create的.then函数中,我无法获取priceRule id来创建折扣代码,现在将其返回给UI。
简而言之,如何将价格规则ID从shopify.priceRule.create传递到shopify.discountCode.create?
谢谢。
答案 0 :(得分:0)
这就是我一起传递嵌套的promise函数并像魔术一样工作的方式。
shopify.priceRule.create({
email,
phone,
title: "REFERRALFRIEND",
allocation_method: "each",
once_per_customer: true,
target_type: "line_item",
target_selection: "all",
value_type: "percentage",
value: -15.0,
customer_selection: "all",
starts_at: "2018-10-10T1:00:10Z"
})
.then((data) => {
shopify.discountCode.create(data.id,
{ code: couponcode })
.then((data) => {
console.log(`coupon code created = `, data);
response.json({
status: 'success',
discount_code: {
code: couponcode,
}
});
})
.catch((err) => {
console.log(`Error in create coupon code'. = `, err);
console.log(`Error creating coupon code'. ${JSON.stringify(err.response.body)}`);
response.status(err.statusCode).send(err.response.body);
});
})
.catch((err) => {
console.log(`Error in create price rule'. = `, err);
console.log(`Error creating price rule'. ${JSON.stringify(err.response.body)}`);
response.status(err.statusCode).send(err.response.body);
});
}));