生成一个Vit+Vue项目

  1. 建立项目文件
  2. 文件目录下cmd => 运行 npm create vite@latest => 选择vue => 选择js or ts
  3. 基础组件下载
npm install vue-router@4 --savenpm install element-plus --savenpm install vuex@next --savenpm install mitt --save   // 组件通信npm install axiosnpm install vite-plugin-html -D // 处理html模板插件npm install -D sass  // CSS预处理器
  1. App.vue
<script setup>
</script><template><div id="app"><router-view /></div>
</template><style scoped>
</style>
  1. src/router/index.js
import { createRouter, createWebHistory } from 'vue-router'
const router = createRouter({history: createWebHistory(import.meta.env.BASE_URL),routes: [{path: '/',//首页name: 'home',component: () => import('../views/OneMap.vue'),},]
})export default router
  1. src/store/index.js
import { createStore } from 'vuex'export default createStore({state: {timeLineTime: '',},getters: {},mutations: {},actions: {},modules: {}
})
  1. src/utils/mitt.js
import mitt from 'mitt'const bus = mitt()
export default bus
  1. src/utils/request.js
import axios from 'axios'import router from '@/router/index.js'// const baseURL = 'http://192.168.1.199:9000'
const baseURL = "http://192.168.1.8:8086"const instance = axios.create({// TODO 1. 基础地址,超时时间baseURL,timeout: 100000
})// 请求
instance.interceptors.request.use((config) => {return config},(err) => Promise.reject(err)
)// 响应
instance.interceptors.response.use((res) => {console.log(res)// TODO 4. 摘取核心响应数据if (res.data.code === 0) {return res}// TODO 3. 处理业务失败ElMessage.error(res.data.message || '服务异常')return Promise.reject(res.data)},(err) => {console.log(err)// TODO 5. 处理401错误if (err.code === 401) {router.push('/')}// 默认情况下ElMessage.error(err.message || '服务异常')return Promise.reject(err)}
)export default instance
export { baseURL }
  1. main.js
import './assets/main.css'import { createApp } from 'vue'
// import './style.css'
import App from './App.vue'import router from './router'
import store from './store'import * as ElementPlusIconsVue from '@element-plus/icons-vue'
import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'
import zhCn from 'element-plus/es/locale/lang/zh-cn'const app = createApp(App)for (const [key, component] of Object.entries(ElementPlusIconsVue)) {app.component(key, component)}app.use(ElementPlus, {locale: zhCn})app.use(store).use(router).use(ElementPlus).mount('#app')
  1. vite.config.js
import { defineConfig, loadEnv } from 'vite'
import vue from '@vitejs/plugin-vue'
import { createHtmlPlugin } from "vite-plugin-html"const getTarget = (mode, target) => {return loadEnv(mode, process.cwd())[target];
};// https://vitejs.dev/config/
export default defineConfig(({ mode }) => {return {plugins: [vue(),//加入配置createHtmlPlugin({inject: {data: {title: getTarget(mode, "VITE_APP_TITLE"),},},}),],server: {host: '0.0.0.0',port: 8991,// 是否开启 httpshttps: false,},}
})
  1. index.html
<%- title %>
  1. .env.development
# 页面标题
VITE_APP_TITLE = 环境项目名称# 开发环境配置
ENV = 'development'# npm_config_port = 9028VITE_APP_BASE_API = ''
  1. .env.production
# 页面标题
VITE_APP_TITLE = 生产环境项目名称# 生产环境配置
ENV = 'production'# VITE_APP_BASE_API = ''
  1. .env.staging
# 页面标题
VITE_APP_TITLE = 测试环境项目名称NODE_ENV = production# 测试环境配置
ENV = 'staging'VITE_APP_BASE_API = '/stage-api'

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/51867.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Could not install packages due to an EnvironmentError: [WinError 5]

Could not install packages due to an EnvironmentError: [WinError 5] 欢迎来到英杰社区https://bbs.csdn.net/topics/617804998 欢迎来到我的主页&#xff0c;我是博主英杰&#xff0c;211科班出身&#xff0c;就职于医疗科技公司&#xff0c;热衷分享知识&#xff0c;武汉城…

通配符https证书的申请途径和配置方法

一、通配符SSL证书的功能 通配符SSL证书&#xff0c;也被称为泛域名证书&#xff0c;是一种特殊类型的SSL证书&#xff0c;它能够保护一个主域名及其所有次级子域名&#xff08;不可跨级保护&#xff09;。例如&#xff0c;如果您的主域名是example.com&#xff0c;那么一个通…

四款2024年不入耳耳机排行榜分享,入耳式耳机戴不舒服的可入手

随着长时间的入耳式耳机佩戴&#xff0c;很多人都发现其实入耳式耳机逐步成为了引起耳朵感染疾病的原因之一。因为经常佩戴入耳式耳机会导致耳道湿度高、微生物更容易生长&#xff0c;进而耳道分泌物也更多了&#xff0c;所以其实现在流行的不入耳耳机&#xff0c;也就是开放式…

昇思25天学习打卡营第1天|快速入门实操教程

昇思25天学习打卡营第1天|快速入门实操教程 目录 昇思25天学习打卡营第1天|快速入门实操教程 一、MindSpore内容简介 主要特点&#xff1a; MindSpore的组成部分&#xff1a; 二、入门实操步骤 1. 安装必要的依赖包 2. 下载并处理数据集 3. 构建网络模型 4. 训练模型…

vue项目中 watch监听的用法

1.导航栏有个搜索功能&#xff0c;点击搜索是路由跳转到课程列表这个页面&#xff0c; 2. 搜索关键字课程&#xff0c;路由跳转到openClass页面&#xff0c;并且携带query参数 search <div class"inputStyle" style"width: 280px;"><el-input v…

Tsucs吸引子:动态系统的神秘引力——从状态方程到稳定解的追寻

Tsucs吸引子&#xff1a;动态系统的神秘引力——从状态方程到稳定解的追寻 Tsucs吸引子的直观类比 你可以把Tsucs吸引子想象成一个神秘的“黑洞”&#xff0c;它不断地“吸引”着动态系统中的各种状态&#xff0c;使它们最终都落入一个稳定的“中心点”&#xff0c;就像黑洞吞噬…

c程序杂谈系列(职责链模式与if_else)

从处理器的角度来说&#xff0c;条件分支会导致指令流水线的中断&#xff0c;所以控制语句需要严格保存状态&#xff0c;因为处理器是很难直接进行逻辑判断的&#xff0c;有可能它会执行一段时间&#xff0c;发现出错后再返回&#xff0c;也有可能通过延时等手段完成控制流的正…

并发 -------- 2.3 进程间的通信 - 消息队列

前言&#xff1a;进程间的通信方式包括 IPC: 1、管道 pipe 无名管道 fifo 有名管道 2、信号 signal 3、消息队列 System V消息队列 / POSIX消息队列 <----------- 4、共享…

【C++/STL】:哈希 -- 线性探测哈希桶

目录 &#x1f4a1;前言一&#xff0c;unordered系列容器二&#xff0c;哈希2.1 哈希的概念2.2 哈希函数2.3 哈希冲突 三&#xff0c;哈希冲突解决(重点)3.1 开放定址法3.2 哈希桶(重点) 四&#xff0c;线性探测的实现4.1 线性探测的基本框架4.2 插入操作4.3 查找操作4.4 删除操…

Let‘s Encrypt

启动Https,需要从证书授权机构(简称CA)处获取一个证书,Lets Encrypt就是一个CA Lets Encrypt上可以获得免费的ssl证书,时间是3个越 下面通过Nginx和Lets Encrypt让网站升级到HTTPS Certbot简介 Certbot是Lets Encrypt官方推荐的获取证书的客户端 Centos 7.9操作 yum install …

openai版本不适配问题(在windows系统下openai migrate)

问题如下&#xff1a; 方法&#xff1a; 参考官网v1.0.0 Migration Guide openai/openai-python Discussion #742 GitHub 具体步骤&#xff1a; 1、curl -fsSL https://docs.grit.io/install | bash -x 但该命令可能不好用————将‘curl -fsSL https://docs.grit.io/i…

谷歌AI拿下IMO奥数银牌,数学推理模型AlphaProof面世,强化学习 is so back

用上了 Gemini 大模型与 AlphaZero 强化学习算法,几何、代数、数论全都会。 对于 AI 来说,奥数不再是问题了。 本周四,谷歌 DeepMind 的人工智能完成了一项壮举:用 AI 做出了今年国际数学奥林匹克竞赛 IMO 的真题,并且距拿金牌仅一步之遥。 上周刚刚结束的 IMO 竞赛共有…

深入分析 Android ContentProvider (九)

文章目录 深入分析 Android ContentProvider (九)ContentProvider 的高级使用及最佳实践&#xff08;续&#xff09;1. 复杂查询与联合查询复杂查询示例 2. 数据同步与一致性示例&#xff1a;使用事务确保数据一致性 3. 数据分页加载示例&#xff1a;分页加载数据 4. 内容提供者…

【CN】Argo 持续集成和交付(二)

7.25.通知 概述 Argo CD 通知持续监控 Argo CD 应用程序&#xff0c;并提供一种灵活的方式来通知用户应用程序状态的重要变化。使用灵活的触发器和模板机制&#xff0c;可以配置何时发送通知以及通知内容。Argo CD 通知包含有用的触发器和模板目录。因此&#xff0c;可以直接…

【Pycharm中anaconda使用介绍】

在安装好anaconda之后&#xff0c;首先打开anaconda界面&#xff0c;执行以下操作 1.查看Anaconda中当前存在的环境 conda info -e 或者 conda-env list 查看–安装–更新–删除包 conda list&#xff1a; conda search package_name 查询包 conda install package_name conda …

pycharm连接mysql

1、按照下图在pycharm找到数据库设置 在PyCharm右侧工具栏有Database&#xff0c;点击打开如果没有&#xff0c;则在view | Tool Windows | Database 选择显示 2、按照下图所示位置找到mysql&#xff08;本机由于配置过&#xff0c;所以由recent&#xff0c;第一次配置在列表中…

Cybersecurity ASPICE实施策略-基于ISO/SAE 21434-亚远景科技

近几年&#xff0c;随着软件定义汽车和汽车的智能化和网联化&#xff0c;使得汽车融合了现代通信与网络通信技术&#xff0c;实现了车与人、车与车、车与道路、车与云端等智能信息交互和共享&#xff0c;也让车具备了环境感知、协同控制、智能决策等功能&#xff1b;与此同时&a…

vue3子组件调用父组件方法 使用prop

父组件Father.vue <template><Child :parentMethod"parentMethod" /> </template><script setup> import { defineComponent } from vue; import Child from ./Child.vue;const parentMethod () > {console.log(这是父页面的一个方法);…

苹果推送iOS 18.1带来Apple Intelligence预览

&#x1f989; AI新闻 &#x1f680; 苹果推送iOS 18.1带来Apple Intelligence预览 摘要&#xff1a;苹果向iPhone和iPad用户推送iOS 18.1和iPadOS 18.1开发者预览版Beta更新&#xff0c;带来“Apple Intelligence”预览。目前仅支持M1芯片或更高版本的设备。Apple Intellige…

使用 Elasticsearch 和 LlamaIndex 保护 RAG 中的敏感信息和 PII 信息

作者&#xff1a;来自 Elastic Srikanth Manvi 在这篇文章中&#xff0c;我们将研究在 RAG&#xff08;检索增强生成&#xff09;流程中使用公共 LLMs 时保护个人身份信息 (personal identifiable information - PII) 和敏感数据的方法。我们将探索使用开源库和正则表达式屏蔽 …