亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

vue3使用vite搭建的項目需要安裝的插件/配置方式

 更新時間:2024年03月09日 09:23:08   作者:sqwu  
這篇文章主要介紹了vue3使用vite搭建的項目需要安裝的插件/配置方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

1.創(chuàng)建項目

項目名稱是myProject

vue create myProject

2.vetur報錯調(diào)整

由于vue3引入組件后不用在components中聲明,vetur插件會報錯

解決辦法:vscode設(shè)置 -》 搜索vetur -》 找到下面這個選項,把他關(guān)掉。然后重新打開文件,發(fā)現(xiàn)沒有報錯了

3.vite2使用eslint校驗

推薦使用這一篇的eslint配置方案??【vite】vite項目從0開始配置eslint

不使用上一篇的話,就按下面的步驟來~

1.安裝eslint

執(zhí)行命令npx eslint --init,按照以下選項配置依賴,會順帶下載四個依賴

2.下面開始適配vue3

打開.eslinttrc.js

1.刪除extends中的"plugin:vue/essential"

2.刪除plugins中的"vue"

3.在extneds中添加'plugin:vue/vue3-recommended'

4.安裝pnpm i -D prettier eslint-config-prettierpnpm i eslint-plugin-prettier

5.在extends里面加一句:'plugin:prettier/recommended'

4.使用vue-router

1.安裝

npm install vue-router@4

2.在src下創(chuàng)建目錄router/index.ts

注意引入方式import * as VueRouter from 'vue-router'。。

直接import VueRouter from 'vue-router'會報錯

Uncaught SyntaxError: The requested module ‘/node_modules/.vite/deps/vue-router.js?v=8dd0ce81’ does not provide an export named ‘default’import * as VueRouter from ‘vue-router’

import * as VueRouter from 'vue-router'
const routes = [
  {
    path: '/about',
    name: 'about',
    component: () => import('../views/About/index.vue')
  }
]
// 創(chuàng)建路由實例
const router = VueRouter.createRouter({
  history: VueRouter.createWebHashHistory(), // hash模式
  routes
})
export default router

3.在main.ts中應(yīng)用router

import { createApp } from 'vue'
import App from './App.vue'

import router from './router'

const app = createApp(App)

// 使用路由
app.use(router)

app.mount('#app')

5.使用vuex

1.安裝

npm install vuex@next --save

2.在src下創(chuàng)建目錄

store
    ├── index.js          # 我們組裝模塊并導(dǎo)出 store 的地方
    ├── actions.js        # 根級別的 action
    ├── mutations.js      # 根級別的 mutation
    └── modules
        ├── cart.js       # 購物車模塊
        └── products.js   # 產(chǎn)品模塊

6.使用vant4

1.安裝

npm i vant

2.安裝插件實現(xiàn)按需引入組件的樣式

// 1.安裝插件依賴
npm i vite-plugin-style-import@1.4.1 -D

// 2.在vite.config.ts使用插件
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import styleImport, { VantResolve } from 'vite-plugin-style-import'
// https://vitejs.dev/config/
export default defineConfig({
  plugins: [
    vue(),
    styleImport({
      resolves: [VantResolve()]
    })
  ]
})

// 3.在頁面中使用組件
<template>
    <van-button>登錄</van-button>
</template>
<script lang="ts" setup>
import { Button as VanButton } from 'vant'
</script>

7.使用less

1.安裝

npm install  less less-loader -d

8.移動端將px轉(zhuǎn)為rem

1.安裝插件

// 是postcss的插件,用于將像素單元生成rem單位。
npm install postcss-pxtorem -D
// 配置可伸縮布局方案,主要是將1rem設(shè)為viewWidth/10
npm install amfe-flexible -S

2.在main.ts中

import 'amfe-flexible'

3.在根目錄下創(chuàng)建postcss.config.js

// eslint-disable-next-line no-undef
module.exports = {
  plugins: {
    autoprefixer: {
      overrideBrowserslist: [
        'Android 4.1',
        'iOS 7.1',
        'Chrome > 31',
        'ff > 31',
        'ie >= 8',
        'last 10 versions'
      ],
      grid: true
    },
    // 把px單位換算成rem單位
    'postcss-pxtorem': {
      rootValue: 75, // 換算的基數(shù)(設(shè)計圖750的根字體為75)
      propList: ['*'], // *代表將項目中的全部進(jìn)行轉(zhuǎn)換,單個轉(zhuǎn)換如width、height等
      unitPrecision: 5
    }
  }

9.使用axios

1.安裝

npm install axios -S
npm install qs  -S

2.在utils目錄下創(chuàng)建http.js,根據(jù)項目要求配置請求/響應(yīng)攔截器

import Axios, { AxiosRequestConfig } from 'axios'
import { Toast } from 'vant'

// 設(shè)置請求頭
Axios.defaults.headers.post['Content-Type'] = 'application/json'
// 設(shè)置超時
Axios.defaults.timeout = 6 * 1000

export default function $http({ url, method, params }: AxiosRequestConfig) {
  return new Promise((resolve, reject) => {
    const _axiosConfig = {
      url,
      method,
      params
    }
    Axios(_axiosConfig)
      .then(res => {
        resolve(res)
      })
      .catch(err => {
        reject(err)
      })
  })
}

3.在src目錄下創(chuàng)建api目錄,用來放接口請求

// api/common.ts
import $http from '../utils/http'
const url = 'https://dev.ylzpay.com/api/follow-up/app/api'
export function getDictInfo(params: unknown) {
  return $http({
    url,
    params
  })
}

// api/index.ts
export * from './common'

10.配置請求代理

// 在vite.config.ts
server: {
    port: 8077,
    open: true, // 自動打開
    base: './',
    proxy: {
      '/app/api': {
        target: 'https://dev.ylzpay.com/api/follow-up/app/api',
        changeOrigin: true, // 打開代理
        rewrite: path => path.replace('/app/api', '')
      }
    }
  }

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。 

相關(guān)文章

  • vue 解決uglifyjs-webpack-plugin打包出現(xiàn)報錯的問題

    vue 解決uglifyjs-webpack-plugin打包出現(xiàn)報錯的問題

    這篇文章主要介紹了vue 解決uglifyjs-webpack-plugin打包出現(xiàn)報錯的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-08-08
  • vue Render中slots的使用的實例代碼

    vue Render中slots的使用的實例代碼

    本篇文章主要介紹了vue Render中slots的使用的實例代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下。
    2017-07-07
  • vue.js自定義組件directives的實例代碼

    vue.js自定義組件directives的實例代碼

    這篇文章主要介紹了vue.js自定義組件directives的實例代碼,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-11-11
  • html中創(chuàng)建并調(diào)用vue組件的幾種方法匯總

    html中創(chuàng)建并調(diào)用vue組件的幾種方法匯總

    這篇文章主要介紹了html中創(chuàng)建并調(diào)用vue組件的幾種方法匯總,幫助大家更好的理解和使用vue框架,感興趣的朋友可以了解下
    2020-11-11
  • Vue發(fā)布訂閱模式實現(xiàn)過程圖解

    Vue發(fā)布訂閱模式實現(xiàn)過程圖解

    這篇文章主要介紹了Vue發(fā)布訂閱模式實現(xiàn)過程圖解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-04-04
  • Vue中子組件向父組件傳值以及.sync修飾符詳析

    Vue中子組件向父組件傳值以及.sync修飾符詳析

    .sync?修飾符所提供的功能,當(dāng)一個子組件改變了一個prop的值時,這個變化也會同步到父組件中所綁定,下面這篇文章主要給大家介紹了關(guān)于Vue中子組件向父組件傳值以及.sync修飾符的相關(guān)資料,需要的朋友可以參考下
    2022-11-11
  • fetch網(wǎng)絡(luò)請求封裝示例詳解

    fetch網(wǎng)絡(luò)請求封裝示例詳解

    這篇文章主要介紹了fetch網(wǎng)絡(luò)請求封裝的示例內(nèi)容詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2021-11-11
  • Element表格表頭行高問題解決

    Element表格表頭行高問題解決

    在最近一個項目的后臺管理系統(tǒng)中,寫前端界面時用到了ElementUI,但是發(fā)現(xiàn)導(dǎo)入數(shù)據(jù)表格之后表頭的高度一直很高,那么如何解決,本文就來詳細(xì)的介紹一下
    2021-09-09
  • elementplus?card?懸浮菜單的實現(xiàn)

    elementplus?card?懸浮菜單的實現(xiàn)

    本文主要介紹了elementplus?card?懸浮菜單的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • 一文帶你上手vue3中的pinia

    一文帶你上手vue3中的pinia

    這篇文章主要以vue3+vite+ts舉例,為大家詳細(xì)介紹了vue3中pinia的安裝與使用,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-09-09

最新評論