您好,登錄后才能下訂單哦!
這篇文章主要介紹“Vue3 Vant組件庫使用過程中要注意什么”的相關知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“Vue3 Vant組件庫使用過程中要注意什么”文章能幫助大家解決問題。
vue3版本使用vant失敗,具體是在使用組件時失效。
具體實例:Vue版本3 - Vant版本4
根據Vant官方文檔可以知道使用組件應該這樣引入使用
import {<!--{cke_protected}{C}%3C!%2D%2D%20%2D%2D%3E--> Button } from 'vant';
<van-button type="primary">主要按鈕</van-button>
但是我在實際根據官方文檔使用卻發現無法生效:
源代碼:
<template> <van-button @click="testClick" type="primary">主要按鈕{{ show }}</van-button> </template>
<script lang="ts" setup> import { ref } from 'vue' import { Button } from 'vant' import 'vant/es/button/style'; const show = ref(false); const testClick = () => { show.value = !show.value }; </script>
實際發現,所有的樣式都沒有生效,但是點擊事件可以正常點擊,然后我們打開控制臺,可以看到組件并沒有被正常的編譯成普通的div
元素,所以Vant
并沒有生效。
會不會是不支持語法糖這種寫法呢。然后換成官方提供的另一種寫法再試試。
<script lang="ts"> import { ref } from 'vue' import { Button } from 'vant' import 'vant/es/button/style'; export default { components: { [Button.name]: Button, }, setup() { const show = ref<boolean>(false); const testClick =()=> { show.value = !show.value } return { show, testClick } } } </script>
去掉語法糖的寫法,ui
效果可以正常顯示了
那么問題來了為什么換成這種語法糖的這種寫法就不行了呢。
1、是不是版本不對的問題呢,然后降級,把Vant
版本降為3版本再試試還是不行,這里就不演示了,有空的小伙伴可以去試試。
既然問題不是版本問題,那就還是在組件使用上有問題。
1、如何找到解決辦法
可以觀察到,語法糖的形式,在引入組件的方式上,少了注冊組件的這一步,因為語法糖的寫法,會自動注冊不需要手動注冊組件。
我們可以看到我們從Vant
導入的是Button
組件,但是使用的時候用的是<van-button/>
是不是組件名稱使用錯誤的問題呢。我們把組件名改成<Button/>
試試
<template> <Button @click="testClick" type="primary">主要按鈕{{ show }}</Button> </template>
組件正常被編譯了:
果然是組件名字錯誤了,醉了,那么vant官方文檔那么寫的原因可能就是為了突出是自家組件所以前面加了前綴<@_@>!!!
既然原因找到了,那么同樣就知道怎么同樣引入Button
組件還可以使用<van-button/>
的寫法,可以使用組件別名。
import { Button as VanButton } from 'vant'
這樣再使用<van-button/>
就沒有問題了。
1、一個是對組件注冊概念不清晰,誤認為名稱不匹配,是Vant官方提供的能力,可以直接使用,所以沒去思考名稱錯誤問題。
2、太依賴Vant文檔。想當然可以直接拿來用
關于“Vue3 Vant組件庫使用過程中要注意什么”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識,可以關注億速云行業資訊頻道,小編每天都會為大家更新不同的知識點。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。