Vite基本使用

什么是vite

vite是vue官方推出的一个打包工具,打包速度比webpack要快得多,具体为什么快我看不懂。
总之就是一个打包工具,也可以代替脚手架来创建项目


创建项目

按照下面的命令可以创建出一个项目

1. 输入

npm init vite@latest

或者

npm create vite@latest

2. 安装vite

如果已经全局安装过就可以直接下一步

3. 配置项目的基本信息

创建完成的样子

  • 项目的名称
  • 基础模板
  • 是否使用typescript

4. 预览效果

输入以下指令
在这里插入图片描述
就会看到打开了这样一个界面,只花了半秒时间,确实很快
在这里插入图片描述


配置项目

配置项

  • vue-router
  • vuex
  • less
  • axios

配置vue.config.js

将这个文件改为一下内容,代码中写有注释,不再做解释

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import { resolve } from 'path'
// https://vitejs.dev/config/
export default defineConfig({
  plugins: [vue()],
  resolve: {
    alias: {
      '@': resolve('./src')  //设置绝对路径
    }
  },
  base: './', // 打包路径
  server: {
    port: 4000, // 服务端口号
    open: true, // 服务启动时是否自动打开浏览器
    cors: true // 允许跨域
  }
})

vue-router

  1. 安装
npm install vue-router@4
  1. 创建路由文件夹,再文件加下创建index.js文件,写入一下代码
import { createRouter, createWebHashHistory, RouteRecordRaw } from 'vue-router'

const routes = [
  {
    path: '/home',
    name: 'Home',
    component: () => import(/* webpackChunkName: "Home" */ '@/views/home.vue')
  },
  { path: '/', redirect: { name: 'Home' } }
]

const router = createRouter({
  history: createWebHashHistory(),
  routes
})

export default router
  1. 在main.js中挂载
import router from '@/router/index'

createApp(App).use(router).mount('#app')

vuex

  1. 安装
npm install vuex@next
  1. 创建vuex文件夹,在index.js中写入以下代码
import { createStore } from 'vuex'

const defaultState = {
  count: 0
}

// Create a new store instance.
export default createStore({
  state() {
    return defaultState
  },
  mutations: {
    increment(state) {
      state.count += 1
    }
  },
  actions: {
    increment(context) {
      context.commit('increment')
    }
  },
  getters: {
    double(state) {
      return 2 * state.count
    }
  }
})
  1. 挂载
import vuex from '@vuex/index'

createApp(App).use(router).use(vuex).mount('#app')

axios

  1. 安装
npm install axios
  1. 配置
    创建utils文件夹,在文件夹里创建一个名为http.js的文件
    写入以下内容
import axios from 'axios'
import { Message } from 'element-ui'
// 创建axios实例
// 创建请求时可以用的配置选项

const instance = axios.create({
  withCredentials: true,
  timeout: 1000,
  baseURL: ''
})
// axios的全局配置
instance.defaults.headers.post = {
  'Content-Type': 'application/x-www-form-urlencoded'
}
instance.defaults.headers.common = {
  'Auth-Type': 'company-web',
  'X-Requested-With': 'XMLHttpRequest',
  token: 'sdfjlsdfjlsdjflsjflsfjlskd'
}

// 添加请求拦截器(post只能接受字符串类型数据)
instance.interceptors.request.use(
  (config) => {
    return config
  },
  (error) => {
    return Promise.reject(error)
  }
)

const errorHandle = (status, other) => {
  switch (status) {
    case 400:
      Message.error('信息校验失败')
      break
    case 401:
      Message.error('认证失败')
      break
    case 403:
      Message.error('token校验失败')
      break
    case 404:
      Message.error('请求的资源不存在')
      break
    default:
      Message.error(other)
      break
  }
}

// 添加响应拦截器
instance.interceptors.response.use(
  // 响应包含以下信息data,status,statusText,headers,config
  (res) => (res.status === 200 ? Promise.resolve(res) : Promise.reject(res)),
  (err) => {
    Message.error(err)
    const { response } = err
    if (response) {
      errorHandle(response.status, response.data)
      return Promise.reject(response)
    }
    Message.error('请求失败')
    return true
  }
)

export default instance
  1. 引入
    在需要的地方引入
import Http from '@/utils/http'

less

安装后即可使用

npm i less -D

这样一个项目就配好了,如果需要配置其他的东西一般都是这些步骤。

  • 11
    点赞
  • 61
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
基于引用\[1\]、\[2\]和\[3\]的信息,基于Spring Boot和Vue的点餐系统是一个集人性化、高效率和便捷等优点于一身的系统。它使用了Spring Boot和Mybatis框架,MySQL作为开发数据库,并采用了MVC的设计理念。系统实现了管理员工及菜品信息发布、员工账号菜品信息发布及配送、移动端查看菜品信息及消费等基本的功能需求。系统通过浏览器与服务器进行通信,实现数据的交互与变更。用户只需通过一台电脑,就可以操作系统,实现数据通信管理。整个系统的设计过程充分考虑了数据的安全、稳定和可靠等问题,并且操作过程简单。系统使用Java语言,采用基于MVC模式的JavaEE技术进行开发,使用MyEclipse 2017 CI 10编译器编写,数据方面主要采用的是MySQL关系型数据库来作为数据存储媒介,配合前台Vue技术完成系统的开发。该系统的前台用户模块包括登录模块的实现。 #### 引用[.reference_title] - *1* [基于SpringBoot的点餐系统的设计与实现(源码+数据库+文档+说明)](https://blog.csdn.net/m0_59186440/article/details/131411215)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [SpringBoot+Vue实现点餐系统](https://blog.csdn.net/m0_49113107/article/details/130457064)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值