Vue3+Vite前端知识汇总1篇

这篇具有很好参考价值的文章主要介绍了Vue3+Vite前端知识汇总1篇。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

  

目录

1、设置package.json,让编译完成后自动打开浏览器。

2、设置vite.config.ts,设置src别名,后面就不用 ../../../ 了。

3、安装@types/node  解决vscode显示红波浪线问题。

 4、安装 sass和reset.css

5、创建并引入全局组件,HospitalTop

6、安装路由,并添加切换路由后滚动到顶部功能

 7、引入element-plus 和国际化

8、引入pinia    pnpm i pinia

9、引入 axios  进行封装request

10, 引入 pinia-plugin-persistedstate  进行pinia的持久化。

 11 最后放上代码源码。可供下载



1、设置package.json,让编译完成后自动打开浏览器。
    "dev": "vite --open",  自动打开浏览器
    "build": "vue-tsc && vite build",
    "preview": "vite preview"
2、设置vite.config.ts,设置src别名,后面就不用 ../../../ 了。
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import {join} from 'path'
// https://vitejs.dev/config/
export default defineConfig({
  plugins: [vue()],
   //配置src目录别名
   resolve: {
    alias: {
        '@': join(__dirname, "src"),
    }
}
})

Vue3+Vite前端知识汇总1篇,前端,vue.js,javascript

ps: 但@这个符号vs不认识,如何让vscode认识@

tsconfig.json   
// 让vscode认识@
    "baseUrl": ".",
    "paths": {
      "@/*":["src/*"]
    },
3、安装@types/node  解决vscode显示红波浪线问题。

Vue3+Vite前端知识汇总1篇,前端,vue.js,javascript

 4、安装 sass和reset.css
pnpm i reset-css
pnpm i sass
5、创建并引入全局组件,HospitalTop
import HospitalTop from '@/components/hospital_top/index.vue'

const app = createApp(App);
app.component('HospitalTop',HospitalTop);
app.mount('#app');

 <HospitalTop />
6、安装路由,并添加切换路由后滚动到顶部功能

Vue3+Vite前端知识汇总1篇,前端,vue.js,javascript

 Vue3+Vite前端知识汇总1篇,前端,vue.js,javascript

 Vue3+Vite前端知识汇总1篇,前端,vue.js,javascript

import {createRouter,createWebHistory} from 'vue-router'

export default createRouter({ //设置为history模式
    history: createWebHistory(),
    routes:[
        {
            path: '/home',  //配置默认路由
            name: 'home', //路由名
            component: () => import("@/pages/home/index.vue"), //引入该路由使用的组件
          
          },
          {
            path: '/hospital',  //配置默认路由
            name: 'hospital', //路由名
            component: () => import("@/pages/hospital/index.vue"), //引入该路由使用的组件
          
          },
          {
            path: '/',  //配置默认路由
            redirect:'/home'
          }
        
    ],
    //切换路由后回到顶部
    scrollBehavior(){
        return {
            left:0,
            top:0
        }
    }
  })  
 
 7、引入element-plus 和国际化
pnpm install element-plus
pnpm install @element-plus/icons-vue

import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'

app.use(ElementPlus, {
  locale: zhCn,
})
8、引入pinia    pnpm i pinia
import { createPinia } from 'pinia'

const pinia = createPinia()

export default pinia


import pinia from './stores'
app.use(pinia);


//定义关于counter的store
import { defineStore } from 'pinia'

//defineStore 是返回一个函数 函数命名最好有use前缀,根据函数来进行下一步操作
const useCounter = defineStore('counter',{
	state: () => {
		return {
			// 所有这些属性都将自动推断其类型
			counter: 90,
			name: 'Eduardo',
			isAdmin: true,
		  }
	}
})

export default useCounter


使用
import useCounter from '@/stores/counter';
const counterStore = useCounter();
console.log(counterStore.counter);
 
9、引入 axios  进行封装request
pnpm i axios

Vue3+Vite前端知识汇总1篇,前端,vue.js,javascript

 然后创建untils/request.ts对axios进行封装,

import axios from 'axios';

const request = axios.create({
    baseURL:'/api',
    timeout:5000
});

request.interceptors.request.use((config)=>{
    console.log(config);
    
    return config;
})

request.interceptors.response.use((response)=>{
    return response;
},(error)=>{
    return Promise.reject(new Error(error.message));
});

export default request;


/使用方法

import request from '@/utils/request';
import { onMounted } from 'vue';
onMounted(()=>{
    request.get('/homepage/index').then(res=>{
        console.log(res);
        
    })
})
//定义关于counter的store
import { defineStore } from 'pinia'
import { reqHomePageData } from '@/api/homepage'
//defineStore 是返回一个函数 函数命名最好有use前缀,根据函数来进行下一步操作
const useHomePageStore = defineStore('HomePage', {
    state: () => {
        return {
            homePageData: {}
        }
    },
    actions: {
        async getHomePageData() {
            // 判断是否装载过数据
            if (Object.keys(this.homePageData).length === 0) {
                let result = await reqHomePageData();
                if (result.status == 200) {
                    this.homePageData = result.data;
                }
            }
        }
    },
    getters: {

    }
})

export default useHomePageStore
10, 引入 pinia-plugin-persistedstate  进行pinia的持久化。
import { createPinia } from 'pinia'
import piniaPluginPersistedstate from 'pinia-plugin-persistedstate'   
 
const pinia = createPinia()
pinia.use(piniaPluginPersistedstate) 

export default pinia 

========================
 persist: {
        key: enumStoreName.roomStore,
        storage: localStorage,
    },
 

Vue3+Vite前端知识汇总1篇,前端,vue.js,javascript

 11 最后放上代码源码。可供下载

https://download.csdn.net/download/ldy889/88189815文章来源地址https://www.toymoban.com/news/detail-599728.html

到了这里,关于Vue3+Vite前端知识汇总1篇的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 前端VUE3+Vite +UniAPP-- 框架搭建

    除了HBuilderX可视化界面,也可以使用 cli 脚手架,可以通过 vue-cli 创建 uni-app 项目。 全局安装 vue-cli 官网 配置tailwindcss插件 官网 在 tailwind.config.js 配置文件中添加所有模板文件的路径。 将加载 Tailwind 的指令添加到你的 CSS 文件中 在你的主 CSS 文件中通过 @tailwind 指令添加每一

    2024年02月11日
    浏览(43)
  • 前端 vite+vue3——写一个随机抽奖组件

    大家好,我是yma16,本文分享关于前端 vite+vue3——写一个抽奖随机组件。 vue3系列相关文章: 前端vue2、vue3去掉url路由“ # ”号——nginx配置 csdn新星计划vue3+ts+antd赛道——利用inscode搭建vue3(ts)+antd前端模板 认识vite_vue3 初始化项目到打包 python_selenuim获取csdn新星赛道选手所在城

    2024年02月08日
    浏览(42)
  • Vite + Vue3 实现前端项目工程化

    Vue3 发布至今,周边的生态、技术方案已足够成熟,个人认为新项目是时候切换到 Vite + Vue3 了。今天就给大家操作一下这种技术方案实现前端工程化。 数字化管理平台 Vue3+Vite+VueRouter+Pinia+Axios+ElementPlus Vue权限系统案例 个人博客 通过官方脚手架初始化项目 第一种方式,这是使

    2024年02月03日
    浏览(69)
  • 07. vue3+vite+qiankun搭建微应用前端框架,并接入vue3微应用

    因为业务系统接入的需要,决定将一个vue3+vite+ts的主应用系统,改造成基于qiankun的微应用架构。此文记录了改造的过程及vue3微应用接入的种种问题。 网上有很多关于微应用改造的案例,但很多都没写部署之后什么情况。写了部署的,没有实操部署在二级目录、三级目录是什

    2024年01月16日
    浏览(61)
  • vue3+vite+js 引用public文件夹中js文件

    1、/public/ep.js 2、页面入口index.html         在head中引入js文件 3、其他页面使用

    2024年02月15日
    浏览(39)
  • vue3 + Tailwind Css + Vite 搭建快速开发前端样式环境

    一个功能类优先的 CSS 框架,用于快速构建定制的用户界面。这是来自 TailwindCss 官方定义。 中文网站 Tailwindcss 基于原子化理念,将样式重复性代码降到最小,原本开发最大限度基于类名的声明块不重复,现在Tailwindcss基于单独一句声明不重复。 活跃度 github starts 数量达到

    2024年02月04日
    浏览(67)
  • 手把手完成前端Vue3 + Vite项目工程化搭建

    基于 Vue3 + Vite 搭建的前端工程化项目演示模板 开发环境: Node.js v16.14.2 + npm v8.3.2 开发工具: Visual Studio Code or WebStorm 源代码管理: Git npm镜像: npm config set registry https://registry.npmmirror.com 技术栈 描述 Vue 渐进式 JavaScript 框架 Vite 新一代前端开发与构建工具 Element Plus 基于 Vue

    2024年04月11日
    浏览(63)
  • 【Vue3+Vite+bwip-js库】 生成DataMatrix码

    已存在的vue3+vite架构前端项目 对二维码分类有一定的了解 详情见:DataMatrix介绍 我这里在build的过程中会编译不通过,报下面的错 解决,在项目根目录下新建declaration.d.ts文件,加上下面的一句代码,即可编译通过 bwip-js库github代码地址

    2024年02月05日
    浏览(44)
  • Vue3+Vite连接高德地图JS API——地图显示、输入搜索

    1、进入高德地图API官网(https://lbs.amap.com/): 2、注册登录。 3、进入控制台。 4、点击“应用管理”,点击“我的应用”,创建新应用。 5、添加Key,服务平台选择“Web端(JS API)”,白名单不要填写,勾选阅读并同意。 点击提交后,就能看到Key已经生成,记住这里的Key和安

    2024年01月17日
    浏览(44)
  • uni-app(Vue3/Vite) + vant UI(Vue3版本)+ js 按需引入的项目搭建

            因为要完成软件工程的项目,要做一个nativeApp,看了很多的技术文档以后决定使用多端兼容的uni-app来开发。组件方面的话最后决定使用目前比较火的Vant UI。但是看了CSDN和掘金上面的很多文章,似乎没有一篇是关于uni-app中使用Vite对vant组件进行按需引入(可能这个

    2023年04月09日
    浏览(64)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包