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

Vue3+Vite項(xiàng)目按需自動(dòng)導(dǎo)入配置及常見(jiàn)問(wèn)題修復(fù)

這篇具有很好參考價(jià)值的文章主要介紹了Vue3+Vite項(xiàng)目按需自動(dòng)導(dǎo)入配置及常見(jiàn)問(wèn)題修復(fù)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

一、Vue API自動(dòng)導(dǎo)入

解決的問(wèn)題:避免在每個(gè)vue組件中都重復(fù)性的去聲明ref,reactive等。如下:

import {ref, reactive} from 'vue' // 配置自動(dòng)導(dǎo)入,用來(lái)省略這句手動(dòng)引入 
const test = ref('aaaa')

1.1 配置unplugin-auto-import

具體配置:

  • 安裝vite插件:unplugin-auto-import
import { defineConfig } from 'vite';
import vue from '@vitejs/plugin-vue';
import AutoImport from 'unplugin-auto-import/vite';
export default defineConfig({
  plugins: [
    vue(),
    AutoImport({
      // 自動(dòng)導(dǎo)入 Vue 相關(guān)函數(shù),如:ref, reactive, toRef 等
      imports: ['vue'],
    }),
  ],
});

1.2 可能遇到ts,eslint不識(shí)別而導(dǎo)入報(bào)錯(cuò)的問(wèn)題

1、typescript 報(bào)錯(cuò):'reactive' is not defined.

  • 原因:TS未識(shí)別到vue api,沒(méi)有相應(yīng)的模塊聲明文件
  • 處理:在vite中配置并生成auto-imports.d.ts ,并在tsconfig.json中引入
    reactive is not defined,經(jīng)驗(yàn)總結(jié),vue.js,javascript,前端
// vite.config.js
export default defineConfig({
  plugins: [
    vue(),
    AutoImport({
      // 自動(dòng)導(dǎo)入 Vue 相關(guān)函數(shù),如:ref, reactive, toRef 等
      imports: ['vue'],
      // 生成自動(dòng)導(dǎo)入的TS聲明文件
       dts: "/auto-import.d.ts", 
    }),
  ],
});
  • tsconfig.json
{
	 "include": [
	    "src/**/*.d.ts",
	    "./*.d.ts",
	    "./auto-imports.d.ts" // 導(dǎo)入上一步生成的配置文件
	  ],
}

2、eslint不識(shí)別報(bào)錯(cuò) error 'reactive' is not defined no-undef
reactive is not defined,經(jīng)驗(yàn)總結(jié),vue.js,javascript,前端
原因:未配置自動(dòng)導(dǎo)入相應(yīng)的eslint規(guī)則
處理:通過(guò)autoimport中的配置生成對(duì)應(yīng).eslintrc-auto-import.json配置文件,并在.eslintrc中引入

// vite.config.js  
{
	// ......
	 AutoImport({
      imports: ["vue"],
      resolvers: [ElementPlusResolver()],
      dts: "/auto-import.d.ts",
      eslintrc: {
        enabled: true,  // 1、改為true用于生成eslint配置。2、生成后改回false,避免重復(fù)生成消耗
      },
    }),
}
 extends: [
    //....此處活力之前配置.
    "./.eslintrc-auto-import.json",
  ],
1.3 配置src/component目錄下的組件自動(dòng)引入

在頁(yè)面組件中,不用手動(dòng)導(dǎo)入組件,直接使用組件的方式:

import { defineConfig } from 'vite';
import vue from '@vitejs/plugin-vue';
import AutoImport from 'unplugin-auto-import/vite';
import Components from 'unplugin-vue-components/vite';

export default defineConfig({
  plugins: [
    vue(),
    AutoImport({
      // 自動(dòng)導(dǎo)入 Vue 相關(guān)函數(shù),如:ref, reactive, toRef 等
      imports: ['vue'],
    }),
	Components({
      // 指定自動(dòng)導(dǎo)入的組件位置,默認(rèn)是 src/components
       dirs: ['src/components','src/otherComponents'],
    }),
  ],
});

二、按需引入U(xiǎn)I組件庫(kù)(antd,element-plus)

2.1、按需引入element-plus

官方文檔很清晰,用到unplugin-vue-components unplugin-auto-import這兩款插件

// vite.config.ts
import { defineConfig } from 'vite'
import AutoImport from 'unplugin-auto-import/vite'
import Components from 'unplugin-vue-components/vite'
import { ElementPlusResolver } from 'unplugin-vue-components/resolvers'

export default defineConfig({
  // ...
  plugins: [
    // ...
    AutoImport({
    // 自動(dòng)導(dǎo)入element相關(guān)函數(shù),如:ElMessage, ElMessageBox..
      resolvers: [ElementPlusResolver()],
    }),
    Components({
    // 自動(dòng)導(dǎo)入element相關(guān)組件
      resolvers: [ElementPlusResolver()],
    }),
  ],
})
2.2 ant-design-vue 按需引入
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import Components from 'unplugin-vue-components/vite'
import { AntDesignVueResolver } from 'unplugin-vue-components/resolvers'

export default defineConfig({
  plugins: [
    vue(),
    Components({
      resolvers: [
        AntDesignVueResolver(),
      ],
    }),
  ]
})

2.3 自動(dòng)導(dǎo)入 Element Plus Icon

element-plus 圖標(biāo)是用 svg 渲染的,需要額外的導(dǎo)入方法。官方文檔對(duì)于icons也有相應(yīng)說(shuō)明。

  • 安裝額外插件:npm install -D unplugin-icons
  • 配置自動(dòng)導(dǎo)入
import { defineConfig } from 'vite';
import vue from '@vitejs/plugin-vue';
import AutoImport from 'unplugin-auto-import/vite';
import Icons from 'unplugin-icons/vite';
import IconsResolver from 'unplugin-icons/resolver';
import Components from 'unplugin-vue-components/vite';
import { ElementPlusResolver } from 'unplugin-vue-components/resolvers';

export default defineConfig({
  plugins: [
    vue(),
    AutoImport({
      resolvers: [
        // ....
        // 自動(dòng)導(dǎo)入圖標(biāo)組件
        IconsResolver({
          prefix: 'Icon',
        }),
      ],
    }),
    Components({
      resolvers: [
 		// .....
        // 自動(dòng)注冊(cè)圖標(biāo)組件
        IconsResolver({
          enabledCollections: ['ep'], //@iconify-json/ep 是 Element Plus 的圖標(biāo)庫(kù),所以 IconsResolver 配置了 enabledCollections: ['ep']
        }),
      ],
    }),
    Icons({
      autoInstall: true,
    }),
  ],
});

注意:通過(guò)此方法自動(dòng)引入后,使用icon時(shí),請(qǐng)采用以下方式才生效。(添加i-eq作為icon前綴)

<el-icon :size="70" color="#409EFC" class="no-inherit">
 <i-ep-share />
</el-icon>

三、關(guān)于配置文件

unplugin-auto-import會(huì)默認(rèn)在要目錄生成auto-imports.d.ts文件,unplugin-vue-components對(duì)應(yīng)會(huì)在根目錄生成components.d.ts文件,分別描述自動(dòng)導(dǎo)入的 API、component。通過(guò)在tsconfig.json的include中引入對(duì)應(yīng)配置文件,避免TS報(bào)錯(cuò)。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-595457.html

AutoImport({
  // ...
  // 配置文件生成位置,默認(rèn)是根目錄 /auto-imports.d.ts
  // dts: './auto-imports.d.ts',
}),
Components({
  // ...
  // 配置文件生成位置,默認(rèn)是根目錄 /components.d.ts
  // dts: './components.d.ts',
}),

到了這里,關(guān)于Vue3+Vite項(xiàng)目按需自動(dòng)導(dǎo)入配置及常見(jiàn)問(wèn)題修復(fù)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • uni-app(Vue3/Vite) + vant UI(Vue3版本)+ js 按需引入的項(xiàng)目搭建

    uni-app(Vue3/Vite) + vant UI(Vue3版本)+ js 按需引入的項(xiàng)目搭建

    ????????因?yàn)橐瓿绍浖こ痰捻?xiàng)目,要做一個(gè)nativeApp,看了很多的技術(shù)文檔以后決定使用多端兼容的uni-app來(lái)開(kāi)發(fā)。組件方面的話最后決定使用目前比較火的Vant UI。但是看了CSDN和掘金上面的很多文章,似乎沒(méi)有一篇是關(guān)于uni-app中使用Vite對(duì)vant組件進(jìn)行按需引入(可能這個(gè)

    2023年04月09日
    瀏覽(93)
  • vue3 vite直接創(chuàng)建項(xiàng)目 添加 element-ui 按需引入和全部引入

    vue3 vite直接創(chuàng)建項(xiàng)目 添加 element-ui 按需引入和全部引入

    ?創(chuàng)建home 工程 yran dev就可以看到一個(gè)網(wǎng)址 點(diǎn)進(jìn)去就可以看到效果了 添加element-ui 之前的main.js 修改后的 element-plus 在vue3中的按需引入。要比2簡(jiǎn)介很多 。自動(dòng)導(dǎo)入也是推薦的一種寫(xiě)法 我們注釋掉全局引用 ?然后改為按需引入 源文件 ?修改后 首先安裝兩款插件 修改后

    2024年02月17日
    瀏覽(28)
  • vite + vue + ts 自動(dòng)按需導(dǎo)入 Element Plus組件,并如何解決按需引入后ElMessage與ElLoading 的問(wèn)題(找不到名稱(chēng)“ElMessage”問(wèn)題。)

    vite + vue + ts 自動(dòng)按需導(dǎo)入 Element Plus組件,并如何解決按需引入后ElMessage與ElLoading 的問(wèn)題(找不到名稱(chēng)“ElMessage”問(wèn)題。)

    按需引入后ElMessage與ElLoading?的問(wèn)題,兩步優(yōu)雅解決找不到名稱(chēng)“ElMessage”問(wèn)題。不需要導(dǎo)入npm包,不需要下載任何東西,只要五行代碼 目錄 1、添加Element Plus組件庫(kù) 1.2、下載 1.2、自動(dòng)導(dǎo)入(官方推薦) 2、按需引入后ElMessage與ElLoading?的問(wèn)題 2.1、解決問(wèn)題 2.2、下面是分析原因

    2024年02月06日
    瀏覽(22)
  • vue3+vite+vant項(xiàng)目下按需引入vant報(bào)錯(cuò)Failed to resolve import解決方案

    vue3+vite+vant項(xiàng)目下按需引入vant報(bào)錯(cuò)Failed to resolve import解決方案

    在學(xué)習(xí)vite+vue3+vant開(kāi)發(fā)項(xiàng)目過(guò)程中, 參考vant官網(wǎng)開(kāi)發(fā)指南-快速上手-引入組件 vant組件庫(kù)官網(wǎng) 按照上述配置好后,運(yùn)行vite環(huán)境報(bào)錯(cuò):Failed to resolve import 根據(jù)報(bào)錯(cuò)信息,發(fā)現(xiàn)是vant的樣式引入路徑不對(duì)。 以 Button 組件為例 程序解析為:項(xiàng)目路徑/node_modules /vant/lib /vant/es/button/s

    2024年02月15日
    瀏覽(24)
  • vite初始化vue3項(xiàng)目(配置自動(dòng)格式化工具與git提交規(guī)范工具)

    vite初始化vue3項(xiàng)目(配置自動(dòng)格式化工具與git提交規(guī)范工具)

    初始化項(xiàng)目 vite構(gòu)建vue項(xiàng)目還是比較簡(jiǎn)單的,簡(jiǎn)單配置選擇一下就行了 初始化命令 初始化最新版本vue項(xiàng)目 2. 基本選項(xiàng)含義 Add TypeScript 是否添加TS ADD JSX是否支持JSX ADD Vue Router是否添加Vue Router路由管理工具 ADD Pinia 是否添加pinia(狀態(tài)管理工具) Add ESLinit 是否添加ESLint是否添加

    2024年02月12日
    瀏覽(61)
  • Vite4+Pinia2+vue-router4+ElmentPlus搭建Vue3項(xiàng)目(組件、圖標(biāo)等按需引入)[保姆級(jí)]

    Vite4+Pinia2+vue-router4+ElmentPlus搭建Vue3項(xiàng)目(組件、圖標(biāo)等按需引入)[保姆級(jí)]

    本文為快速搭建vite4項(xiàng)目,一些插件的詳情就不做過(guò)多的解釋?zhuān)挤庞泄倬W(wǎng)鏈接,需要深入了解的小伙伴可自行查看。至于為什么選擇使用vite,因?yàn)樗邆渲焖賳?dòng)、按需編譯、模塊熱更新的亮點(diǎn)。歸根結(jié)底最大的特點(diǎn)就是 快 。vue的創(chuàng)始人是尤雨溪大佬,vite也是他。所以

    2023年04月19日
    瀏覽(31)
  • vue3+vite路由中使用element自動(dòng)導(dǎo)入圖標(biāo)

    vue3+vite路由中使用element自動(dòng)導(dǎo)入圖標(biāo)

    el-icon v-if=\\\"childItem.meta childItem.meta.icon\\\" ??????? ?component :is=\\\"childItem.meta.icon\\\" / /el-icon import { createRouter, createWebHashHistory } from \\\'vue-router\\\' import Layout from \\\'../layout/index.vue\\\' import { markRaw } from \\\'vue\\\' export const asyncRoutes = [ ? { ? ? path: \\\'/\\\', ? ? name: \\\'HomePage\\\', ? ? component: Layout, ? ? redir

    2024年02月15日
    瀏覽(23)
  • Vite + Vue3 +Vant4構(gòu)建項(xiàng)目時(shí),按需引入使用Toast組件,引用 showToast 時(shí)出現(xiàn)編譯報(bào)錯(cuò)的解決方案

    Vite + Vue3 +Vant4構(gòu)建項(xiàng)目時(shí),按需引入使用Toast組件,引用 showToast 時(shí)出現(xiàn)編譯報(bào)錯(cuò)的解決方案

    一.問(wèn)題定位 在Vite + Vue3 +Vant4構(gòu)建項(xiàng)目時(shí),需要使用Toast組件顯示提示信息,按照官方文檔使用函數(shù)調(diào)用 使用后直接報(bào)錯(cuò),說(shuō)是找不到對(duì)應(yīng)的樣式文件(如下圖): 在項(xiàng)目中查找node-moudles文件,確實(shí)沒(méi)有找到,只有一個(gè)toast文件(如下圖): 在百度搜索解決方法,說(shuō)是需要單

    2024年01月17日
    瀏覽(97)
  • 解決vite配置element-puls按需導(dǎo)入報(bào)錯(cuò)問(wèn)題

    解決vite配置element-puls按需導(dǎo)入報(bào)錯(cuò)問(wèn)題

    element plus快速上手 vite+vue3 相關(guān)知識(shí)記錄 使用vite搭建vue3.0項(xiàng)目 vite常用配置 vite配置環(huán)境變量與模式 創(chuàng)建vite項(xiàng)目 按照順序執(zhí)行如下命令,即可基于 vite 創(chuàng)建 vue 3.x 的工程項(xiàng)目 安裝并使用element plus 根據(jù)官方文檔安裝、根據(jù)需求配置,這里選擇官方推薦按需導(dǎo)入方式 按需導(dǎo)入

    2024年02月04日
    瀏覽(19)
  • Vue3+TS+Vite創(chuàng)建項(xiàng)目,并導(dǎo)入Element-plus和Sass

    Vue3+TS+Vite創(chuàng)建項(xiàng)目,并導(dǎo)入Element-plus和Sass

    1.桌面新建一個(gè)文件夾Vue3-app 打開(kāi)編輯器導(dǎo)入文件夾,編輯器打開(kāi)終端輸入或者命令行工具cd到項(xiàng)目目錄下輸入 npm init vue@latest 回車(chē)運(yùn)行 這里我選擇了TS+Vite來(lái)開(kāi)發(fā),并選擇安裝路由 2.cd到 vue-project目錄下 輸入 npm install 回車(chē)運(yùn)行 3.安裝完成后 輸入 npm run dev 回車(chē)運(yùn)行 瀏覽器打開(kāi)

    2024年02月16日
    瀏覽(24)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包