我現在已經從資料庫獲取資料,并且壓入陣列ProItems。我如何將這個陣列回傳,并且在另外的js檔案中使用呢。代碼如下:
var InvcDtl = (invcnum)=>{
sql.connect(config).then(() => {
return sql.query`select * from erp.InvcDtl
where InvoiceNum = ${invcnum}`
}).then(result => {
console.dir(result.recordset)
var ProItems = []
for (var value of result.recordset)
console.log(
ItemsDtl = {
code: value.partNum,
name: value.LineDesc,
price: value.UnitPrice,
quantity:value.OurShipQty,
uom:value.IUM,
taxRate: value.taxRate,
amount: value.DocExtPrice,
// 商品分類編碼
// catalogCode: 'catalogCode-db',
},
ProItems.push(ItemsDtl)
)
// 拋出 ProItems
console.log(ProItems)
}).catch(err => {
// ... error checks
})
sql.on('error', err => {
// ... error handler
})
}
InvcDtl(19965)
uj5u.com熱心網友回復:
請大俠指點,急急急!uj5u.com熱心網友回復:
把 var ProItems = [];移到
sql.connect的前面
其實就是變數的作用域問題而已,這樣你可以在呼叫方法后直接使用ProItems
或者你在// 拋出ProItems的地方改成
return ProItems //作為回傳值回傳
呼叫的時候
var res = InvcDtl(19965)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/251912.html
標籤:JavaScript
