



下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第vue父組件調(diào)用子組件方法報錯問題及解決目錄vue父組件調(diào)用子組件方法報錯vue父組件調(diào)用子組件方法及遇到的問題
vue父組件調(diào)用子組件方法報錯
在父組件定義了一個tab標簽頁,每一個標簽頁下面都調(diào)用不同的組件,
如下圖所示:
子組件中定義的方法:
setup(){
constgetList=()={
constdate=moment(newDate()).format('YYYY-MM')
loading.value=true
apiGetPageList({
salaryDate:date,
page:state.pagination.page,
limit:state.pagination.limit,
jobNo:state.formState.searchValuestate.formState.searchValue:null
}).then((res:any)={
if(res.data.status==200){
state.dataSource=res.data.data.rows
state.pagination.total=res.data.data.total
}else{
Message.error(res.data.messageres.data.message:"獲取數(shù)據(jù)失敗")
}).finally(()={
loading.value=false
return{
getList
父組件中使用tab標簽頁的change方法,每次點擊不同tab頁的時候,都會調(diào)用該子組件的獲取列表數(shù)據(jù)的接口。
一開始的思路是:在父組件中調(diào)用子組件的時候使用ref屬性,通過ref拿到子組件的方法,然后在change方法中進行調(diào)用。但在實際開發(fā)中,卻出現(xiàn)了問題,切換到tab頁時,控制臺會報錯,如下所示:
這個是因為異步執(zhí)行的原型,子組件還沒渲染完就調(diào)用方法會出現(xiàn)這樣的情況。在網(wǎng)上百度了下解決方法,只需要在子組件中定義的方法中加上this.$nextTick就可以解決。
這種方法的確可以,但我試了試另一種方法:在父組件中的change方法中加上nextTick,想驗證下是否能夠解決,結(jié)果是能夠正常調(diào)用。
代碼如下所示:
setup(){
constchangeTab=(active:any)={
switch(active){
case"2":
console.log(33333,areaWorkDay)
nextTick(()={
areaWorkDay.value.editTableData={}
areaWorkDay.value.getPageList()
areaWorkDay.value.formRef.resetFields()
break;
case"3":
console.log(111,monthSalaryRef)
//monthSalaryRef.value.$emit('getList')
nextTick(()={
monthSalaryRef.value.editTableData={}
monthSalaryRef.value.getList()
monthSalaryRef.value.monthRef.resetFields()
break;
return{
changeTab
這樣也可以解決父組件調(diào)用子組件的時候,因為異步執(zhí)行,子組件方法還沒初始化完成,導致控制臺報錯的問題。
vue父組件調(diào)用子組件方法及遇到的問題
在子組件methods選項中定義方法method(),在父組件中引用子組件,并在子組件標簽中定義ref=xxx,使用this.$refs.xxx.method()調(diào)用子組件方法。
但chrome控制臺報錯該方法undifined,原因是因為使用ref調(diào)用子組件是調(diào)用的實例,但調(diào)用時該實例還未加載完,因此調(diào)用的方法undifined。
解決方法:在父組件中調(diào)用時,先加載完組
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2030年中國圖片版權(quán)行業(yè)市場調(diào)查研究及發(fā)展戰(zhàn)略研究報告
- 學生退學申報表
- 2025至2030年中國鋼琴培訓市場運行態(tài)勢及行業(yè)發(fā)展前景預(yù)測報告
- 麗水臨時倉庫租賃協(xié)議書
- 個人買房子合同協(xié)議書范本
- 二手農(nóng)用三輪出售協(xié)議書
- 農(nóng)村政府補償協(xié)議書模板
- 工廠液壓設(shè)備轉(zhuǎn)讓合同范本
- 與政府簽訂旅游合同范本
- 關(guān)于配件的采購合同范本
- 硅PU球場施工方案模板
- 職高英語詞匯表優(yōu)質(zhì)資料
- YY/T 0752-2009電動骨組織手術(shù)設(shè)備
- 用人單位職業(yè)衛(wèi)生檔案(加油站)
- GB/T 40080-2021鋼管無損檢測用于確認無縫和焊接鋼管(埋弧焊除外)水壓密實性的自動電磁檢測方法
- GB/T 2-2001緊固件外螺紋零件的末端
- 插花藝術(shù)全部講課稿課件
- 標準DBS54 2002-2017 食品安全地方標準 糌粑制作規(guī)范
- 教育評價學全套ppt課件完整版教學教程
- 油氣藏類型、典型的相圖特征和識別實例
- 未來教育家治校方略
評論
0/150
提交評論