[英]variable values undefined in LWC - JavaScript
我已經聲明了一個 const 'offset',當我嘗試獲取它並在 function 中更新時,該值未定義。 因此,我將無法為 const 增加價值。 下面是示例代碼
import { LightningElement, wire, track , api } from 'lwc';
import getContractWithDetails from '@salesforce/apex/AccountContactController.getContractWithDetails';
const offset = 0;
export default class WrapperClassExampleLWC extends LightningElement {
@track accountsWithContacts;
@track contractWithDetails;
handleScroll(event)
{
console.log(' stats :' , this.offset);
}
}
當用戶執行滾動操作時調用 handleScroll 函數,並且每次滾動條到達底部時,我都想將偏移值更新為更高的值(例如每次 30)並從 apex 和 append 獲取新記錄到表,但上面的控制台日志給了我stats:undefined ,為什么這個值是未定義的? 盡管我可以檢查該值是否未定義並使用如下所需的值進行更新,但我想了解為什么該值未定義,即使我已將其設置為 0,任何指向 SF LWC 變量文檔的鏈接和指針都會有所幫助。
if(this.offset == undefined)
{
this.offset = 0;
}
this.offset = this.offset + 30;
聲明后無法更新const
,請嘗試https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/const
而且由於您在 class 之外擁有它,就像一些全局變量一樣 - 它不需要this
。 該腳本告訴您this.offset
不存在(未定義)。 你可以console.log(offset);
我認為您需要將其設為 class 成員並刪除const
您已經在 class 之外聲明了變量。
所以你不必使用this
來訪問變量
所以你的 function 將如下所示
handleScroll(event)
{
console.log(' stats :' , offset);
}
注意:當您將變量聲明為const
時,您無法更改其值。 如果你想改變它的價值使用let
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.