- 创建一个名为sasa的项目
npm create vite@latest saas
- 安装路由
cnpm install vue-router@4 -s
- 选择vue+js
- 在src下新建router/index.js
import { createRouter, createWebHistory } from "vue-router";
import Home from "../views/Home.vue";
const routes = [
{
path: "/",
name: "Home",
component: Home,
},
{
path: "/about",
name: "About",
component: () =>
import(/* webpackChunkName: "about" */ "../views/About.vue"),
},
];
const router = createRouter({
history: createWebHistory(),
routes,
});
export default router;
- 在src目录下新建views/Home.vue和About.vue
- 在app.vue中
<template>
<router-view />
</template>
- 在main.js中添加
import router from "./router";
createApp(App).use(router).mount("#app");
- 安装插件unplugin-auto-import插件
可以省略 improt {ref} 一类的引入
命令npm i unplugin-auto-import -D
在vite.config.js中进行配置 以及 @代表src目录
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue';
import AutoImport from 'unplugin-auto-import/vite';
const path = require('path');
export default defineConfig({
plugins: [
vue(),
AutoImport({
imports:['vue','vue-router']
})
],
resolve: {
alias: {
'@': path.resolve(__dirname, './src'),
},
},
});
- @代表src目录 如果出现Error: Dynamic require of "path" is not supported的报错
const path = require('path');
改成
import path from "path";
- 安装element-plus
- npm install element-plus --save
- npm install -D unplugin-vue-components unplugin-auto-import
这里用的是局部引入,并不是全部的
- 配置修改vite.config.js
import Components from 'unplugin-vue-components/vite'
import { ElementPlusResolver } from 'unplugin-vue-components/resolvers'
plugins中添加
Components({
resolvers: [ElementPlusResolver()],
}),
plugins中AutoImport添加
resolvers: [ElementPlusResolver()],
- 简略的对axios二次封装
server:{
proxy:{
'/api':'http://testapi.xuexiluxian.cn'
}
}
- 安装 cnpm install axios -s
- 新建utils/request.js在src中
- import axios from 'axios';
import axios from 'axios';
const service = axios.create();
service.interceptors.request.use(config => {
return config;
}, error => {
Promise.reject(error);
});
service.interceptors.response.use(response => {
return response.data;
},error => {
return Promise.reject(error);
});
export default service;
- api解耦
在utils/api/xxx.js中根据接口文档写,按需更改
import request from '../utils/request'
export function getSliders( data){
return request({
url:'/api/course/getSliders',
method:"post",
data
})
}
<script setup>
import { getSliders } from "@/utils/api/slider";
onBeforeMount(() => {
getSliders().then((res) => {
console.log(res);
});
});
</script>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· Obsidian + DeepSeek:免费 AI 助力你的知识管理,让你的笔记飞起来!
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
2022-09-26 给组件input/input-number做校验 vue antd