国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

uni-app使用vue3,在元素或組件實例上添加ref,用this.$refs顯示undefined

這篇具有很好參考價值的文章主要介紹了uni-app使用vue3,在元素或組件實例上添加ref,用this.$refs顯示undefined。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

項目中引用了一個UI組件庫,在表單上添加了`ref`屬性,方便提交時驗證。觸發(fā)提交方法時顯示不存在這個方法或this.$refs為undefined。

<u--form labelPosition="left" :model="userInfo" :rules="rules" ref="loginForm">
    <u-form-item label="賬號" prop="name" borderBottom ref="username">
		<u--input v-model="userInfo.name" placeholder="請輸入賬號" border="surround"></u--input>
	</u-form-item>
	<u-form-item label="密碼" prop="password" borderBottom ref="password">
		<u--input v-model="userInfo.password" placeholder="請輸入密碼" border="surround" type="password"></u--input>
	</u-form-item>
	<div class="loginBtn"><u-button type="primary" @click="loginApp">登錄</u-button></div>
</u--form>

解決方法:

引入`getCurrentInstance`,t得到當前組件實例,然后用`ctx.$refs`代替`this.$refs`。這里的`ctx`相當于全局this。

<script setup>
    import { getCurrentInstance } from 'vue'

    // 獲取當前組件實例
    const { ctx } = getCurrentInstance();


    function loginApp() {
		ctx.$refs.loginForm.validate().then(res => {
			uni.$u.toast('校驗通過')
			
		}).catch(err => {
			uni.$u.toast('校驗失敗')
		})
	}



<script>

------------------2023/10/27更新---------------------------------

真機調(diào)試時,遇到一個問題,用上面的方法獲取不到`dom`元素。

解決方法:

定義一個ref對象,要和視圖中的`ref``引用名稱相同。文章來源地址http://www.zghlxwxcb.cn/news/detail-731947.html

// 視圖
<u--form labelPosition="left" :model="userInfo" :rules="rules" ref="loginForm">
    
</u--form>

// js代碼
const loginForm = ref(null)

loginForm.value.validate().then(res => {})

到了這里,關(guān)于uni-app使用vue3,在元素或組件實例上添加ref,用this.$refs顯示undefined的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務器費用

相關(guān)文章

  • 小程序-uni-app:uni-app-base項目基礎(chǔ)配置及使用 / uni-app+vue3+ts+vite+vscode

    小程序-uni-app:uni-app-base項目基礎(chǔ)配置及使用 / uni-app+vue3+ts+vite+vscode

    目前(20230605)uni-app最新版本(3.8.4.20230531) 一、官網(wǎng)文檔 微信開放文檔 uni-app官網(wǎng) 二、創(chuàng)建項目 項目目標:vue3+ts+vite+vscode 創(chuàng)建以 typescript 開發(fā)的工程(如命令行創(chuàng)建失敗,請直接訪問?gitee?下載模板) npx degit dcloudio/uni-preset-vue#vite-ts uniapp-base ? 本文創(chuàng)建成功 ? 為了驗

    2024年02月05日
    瀏覽(3535)
  • 在uni-app使用vue3進行store全局數(shù)據(jù)共享

    在uni-app使用vue3進行store全局數(shù)據(jù)共享

    在uni-app中使用vue3進行store的全局數(shù)據(jù)共享,網(wǎng)上文章太雜了,記錄一下自己寫的一個最簡單易懂的例子,以供自己后面需要用到時候可以最直觀的知道到底怎么實現(xiàn) 在index.js中寫入代碼如下(示例): uni-app好像內(nèi)置vuex,不需要額外下載,如果記錯了的話就得先去下載好 代

    2024年02月09日
    瀏覽(36)
  • 前端vue uni-app多圖片上傳組件,支持單個文件,多個文件上傳 步驟條step使用

    前端vue uni-app多圖片上傳組件,支持單個文件,多個文件上傳 步驟條step使用

    快速實現(xiàn)多圖片上傳組件,支持單個文件,多個文件上傳 步驟條step使用;?閱讀全文下載完整代碼請關(guān)注微信公眾號: 前端組件開發(fā) 效果圖如下: 使用方法 ? 使用方法 HTML代碼部分 ? html JS代碼 (引入組件 填充數(shù)據(jù)) ? javascript

    2024年02月08日
    瀏覽(31)
  • uniapp系列-超詳細教你在uni-app+vue3里通過web-view組件傳遞信息打開H5頁面寫入localstorage并解決兼容性

    uniapp系列-超詳細教你在uni-app+vue3里通過web-view組件傳遞信息打開H5頁面寫入localstorage并解決兼容性

    web-view 是一個 web 瀏覽器組件,可以用來承載網(wǎng)頁的容器,會自動鋪滿整個頁面(nvue 使用需要手動指定寬高)。 點擊這里直達官網(wǎng)文檔 點擊這里下載我的代碼demo 本文最下面還有一些 常見或者奇怪問題解決方案 哦~ 之前開發(fā)好的H5頁面,不想重新開發(fā),想要直接放進項目用

    2024年02月09日
    瀏覽(27)
  • uni-app+vue3會遇到哪些問題

    已經(jīng)用 uni-app+vue3+ts 開發(fā)了一段時間,記錄一下日常遇見的問題和解決辦法 uni-app 是支持多端,如果你想讓你的代碼,只在部分平臺使用,那么就需要用的它的單端處理語法 //#ifdef 和 //#ifndef 等。 因為有異形手機屏的存在,最頂部有攝像頭,最下面有導航條,為了避免界面內(nèi)

    2024年02月19日
    瀏覽(21)
  • uni-app中監(jiān)聽網(wǎng)絡狀態(tài),并在嵌入webView頁面的組件中添加網(wǎng)絡監(jiān)測

    uni-app中監(jiān)聽網(wǎng)絡狀態(tài),并在嵌入webView頁面的組件中添加網(wǎng)絡監(jiān)測

    下載插件 打開網(wǎng)絡異常組件頁面,點擊\\\"下載插件并導入HBuilderX\\\"按鈕,打開HBuilderX軟件后,選擇需要導入插件的項目,點擊“確定即可”。 使用插件 pages/network/index頁面,仿照微信。 效果展示 修改網(wǎng)絡監(jiān)測組件mz-network-error 當網(wǎng)絡狀態(tài)發(fā)生變化時emit相關(guān)事件 修改組件調(diào)用

    2024年02月12日
    瀏覽(40)
  • VUE3、uni-app、SpringBoot登錄密碼加密

    aes.js import {Encrypt} from \\\'@/utils/aes.js\\\'; loginForm.value.password = Encrypt(password.value); new Aes().decrypt(loginBody.getPassword()) CryptoJS.js aes.js import {Encrypt} from \\\'@/utils/aes.js\\\' Encrypt(this.password)

    2024年02月08日
    瀏覽(20)
  • 手寫類似于BetterScroll樣式的左右聯(lián)動菜單 uni-app+vue3+ts (使用了script setup語法糖)

    ?注意:在模擬器用鼠標滾動是不會切換光標的,因為使用的是觸摸滑動?!咀远x類型貼在最后了】 script 部分如下: ?template部分如下: scss樣式: ?category.d.ts main-arr.d.ts ?

    2024年02月05日
    瀏覽(23)
  • uni-app+vue3+ts項目搭建完整流程

    uni-app+vue3+ts項目搭建完整流程

    項目代碼同步更新至碼云 uni-vue3-ts-template 利用 uni-app 開發(fā),有兩種方法: 通過 HBuilderX 創(chuàng)建(需安裝 HBuilderX 編輯器) 通過命令行創(chuàng)建(需安裝 NodeJS 環(huán)境),推薦使用 vscode 編輯器 這里我們使用第2種方法,這兩種方法官方都有詳細介紹 點擊查看官方文檔 安裝 Vue3 插件,點

    2024年02月03日
    瀏覽(24)
  • Uni-app + Vue3 + TS +Vite 創(chuàng)建項目

    Uni-app + Vue3 + TS +Vite 創(chuàng)建項目

    npm 都很熟,可是與 npm 如此相似的 npx 是干嘛的呢?我們?yōu)樯跻榻B npx ? 由于 uni-app 官方提供創(chuàng)建命令使用的是 npx,所以我們先來了解下 npx 是干什么的?它與 npm 的區(qū)別。 npx 是 npm 的高級版本,它從 npm v5.2 版本開始引入的,與 npm 綁定在一起,無需額外安裝,具有更大的功

    2023年04月15日
    瀏覽(22)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包