vue3+element项目创建

2023-09-22 11:26:20

一、创建vue3项目步骤

要创建一个Vue 3 + Element UI的项目,你可以按照以下步骤进行操作:
1.确保你已经安装了Node.js和npm(Node.js的包管理器)。你可以在命令行中运行以下命令来检查它们是否已经安装:

   node -v
   npm -v

2.使用Vue CLI来创建一个新的Vue项目。在命令行中运行以下命令:

	 npm install -g @vue/cli
	 vue create my-project

这将安装Vue CLI并创建一个名为my-project的新项目。在创建项目时,你可以选择手动选择特性或使用默认配置。
3. 进入到项目目录中:

   cd my-project

4.安装Element UI。在命令行中运行以下命令:

   npm install element-plus

5.在项目中使用Element UI。在你的Vue应用的入口文件(通常是src/main.js)中,添加以下代码:

import { createApp } from 'vue'
import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'

const app = createApp(App)
app.use(ElementPlus)
app.mount('#app')

这将引入Element UI库,并将其作为Vue应用的插件使用。
6. 运行项目。在命令行中运行以下命令来启动开发服务器:

   npm run serve

这将启动开发服务器,并在浏览器中打开你的Vue应用。
现在,你已经成功创建了一个Vue 3 + Element UI的项目。你可以根据需要在项目中使用Element UI的组件和样式。
也可以手动打开此网址。
在这里插入图片描述

二、项目结构说明

在Vue 3中,通常使用Vue CLI来创建和管理项目,它会自动生成一套默认的目录结构。下面是一个典型的Vue 3项目的目录结构说明:

my-project/
  |- public/
  |  |- index.html
  |
  |- src/
  |  |- assets/
  |  |- components/
  |  |- views/
  |  |- App.vue
  |  |- main.js
  |
  |- package.json
  |- vue.config.js
  |- README.md
  • public/:这个目录包含了公共的静态资源,如index.html文件和其他不需要经过构建处理的文件。

  • src/:这个目录是项目的主要源代码目录。

  • assets/:这个目录用于存放项目的静态资源,如图片、样式文件等。

  • components/:这个目录用于存放项目的可复用组件。

  • views/:这个目录用于存放项目的页面组件。

  • App.vue:这是项目的根组件,包含了整个应用的布局和路由视图的渲染。

  • main.js:这是项目的入口文件,用于初始化Vue应用并挂载根组件。

  • package.json:这个文件是项目的配置文件,包含了项目的依赖和脚本等信息。

  • vue.config.js:这个文件是Vue CLI的配置文件,用于自定义构建配置和开发服务器等选项。

  • README.md:这个文件是项目的说明文档,通常包含了项目的介绍、安装和使用方法等信息。
    这只是一个简单的目录结构示例,实际的项目可能会根据需求和团队的偏好进行调整和扩展。

三、安装路由

在Vue 3中,你可以使用Vue Router来进行路由管理。要在路由配置中添加新页面的路由,你可以按照以下步骤进行操作:
1.在你的Vue项目中,确保已经安装了Vue Router。如果没有安装,可以使用以下命令进行安装:

   npm install vue-router

判断是否安装成功可以看一下package.json是否显示vue-router的版本号
在这里插入图片描述

2.在项目的src文件中,创建一个新的文件夹router,里面放置index.js,用于配置路由。src/router/index.js

3.在此文件中,导入Vue和Vue Router,并创建一个新的路由实例。示例代码如下:

   import { createRouter, createWebHistory } from 'vue-router'
   import Indexfrom '../views/Index/IndexPage.vue'

   const routes = [
     {
       path: '/',
       name: 'Index',
       component: Index
     }
   ]

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

   export default router

在上面的示例中,我们将路由实例作为Vue应用的插件使用。
现在,你已经成功在路由配置中添加了新页面的路由。你可以根据需要继续添加其他页面的路由配置。
4.在Vue 3应用程序的入口文件(通常是main.js)中使用了上述路由配置。示例代码如下:

import {
	createApp
} from 'vue'
import App from './App.vue'
import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'
import router from './router'

const app = createApp(App)
app.use(ElementPlus)
app.use(router) 
app.mount('#app')

我们将路由配置通过 use 方法注入到Vue应用程序中。

报错处理:

error Component name “XXX” should always be multi-word vue/multi-word-component-
这些错误信息是由Vue的ESLint插件生成的,用于检查和提醒开发者在Vue组件中的一些最佳实践和规范。如果出现这种错误,要么选择规范自己的代码,要么选择关闭验证。其他的处理情况可以进行百度。
可以在package.json文件里面添加rule规则:

"rules": {
	"vue/multi-word-component-names": "off"
}

在这里插入图片描述

四、创建首页并显示内容

在这里插入图片描述

indexPage.vue文件内容:

<template>
	<!-- 页面内容 -->
	<div>
		你好
	</div>
</template>

<script>
	export default {
		name: 'Index',
		// 组件逻辑代码
	}
</script>

<style>
	/* 样式规则 */
</style>

router/index.js文件:

import {
	createRouter,
	createWebHistory
} from 'vue-router'
import Index from '../views/Index/IndexPage.vue'

const routes = [{
	path: '/',
	name: 'Index',
	component: Index
}]

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

export default router

App.vue文件:

<template>
	<div id="app">
		<router-view></router-view>
	</div>
</template>

<script>
export default {
  name: 'App',
  components: {
  
  }
}
</script>

<style>
#app {
  font-family: Avenir, Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
</style>

(一)如果运行没有效果,(以下和上面项目目录文件等不关联,这里只是举例)可能有以下几个原因:

1.检查路由配置:确保你的路由配置正确,并且将根路径 /index 组件关联起来。在路由配置文件中,确保你有类似以下的代码:

   import { createRouter, createWebHistory } from 'vue-router';
   import Index from '@/views/Index.vue';

   const routes = [
     {
       path: '/',
       name: 'Index',
       component: Index
     },
     // 其他路由配置...
   ];

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

   export default router;

2.检查入口文件:在入口文件(通常是 main.js)中,确保你正确地使用了路由配置。示例代码如下:

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

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

确保你使用了正确的路由配置文件,并将其通过 use 方法注入到Vue应用程序中。
3. 检查组件名称:确保你的 index 组件的名称与路由配置中的组件名称一致。在 Index.vue 文件中,确保你有类似以下的代码:

   <template>
     <!-- 页面内容 -->
   </template>

   <script>
   export default {
     name: 'Index',
     // 组件逻辑代码
   }
   </script>

   <style>
   /* 样式规则 */
   </style>

确保 name 属性的值与路由配置中的组件名称一致。
4.路由出口:在你的根组件(通常是App.vue)中,确保你有一个路由出口()来渲染对应的页面。

   <template>
     <div id="app">
       <!-- 其他内容... -->
       <router-view></router-view>
     </div>
   </template>

五、跳转页面

路由链接:如果你在其他页面或组件中需要导航到views/Index/IndexPage页面,确保你使用了正确的路由链接。
【此处是根据你的命名写法来,代码不可生硬照搬】

  <router-link to="/index">Go to Index Page</router-link>

在这里插入图片描述
写法还有其他形式

更多推荐

XSS跨站脚本攻击

XSS全称(CrossSiteScripting)跨站脚本攻击,XSS属于客户端攻击,受害者最终是用户,在网页中嵌入客户端恶意脚本代码,最常用javascript语言。(注意:叠成样式表CSS已经被占用所以叫XSS)原因:输入没过滤,输出没编码。危害:劫持用户cookie,钓鱼,挂马分类:1、反射性XSS(中危,一次性

肖sir__项目环境之全流程__005

一、测试流程(h模型)1、需求文档(产品)需求文档(软件需求规格说明书srs)(1)如何分析需求a、显示需求(主流程、功能,业务)b、隐性需求(比如:红包记录,扣款金额=发送金额)c、特殊需求(计算:保费计算,还款计算)d、关联需求(满减活动:活动订单,活动增加,)(2)需求特殊a、完整性:功能的实现和设计信息齐全b、

API接口:概述、设计、应用与未来趋势

一、API接口概述API,全称应用程序接口,是一种软件程序之间的通信方法。API接口在互联网开发中扮演着重要角色,允许不同的应用程序相互交流和共享数据。API定义了一套标准的通信协议,使得开发人员能够使用特定的函数、方法或协议来交换信息。二、API接口设计RESTfulAPIRESTfulAPI是当前最流行的一种API

【SpringMVC】自定义注解与AOP结合使用

目录一、SpringMVC之自定义注解1.1Java注解简介1.2为什么要用注解1.3注解的分类⭐1.3.1JDK基本注解1.3.2JDK元注解1.3.3自定义注解1.4自定义注解三种使用案例1.4.1案例一(获取类与方法上的注解值)1.4.2案例二(获取类属性上的注解属性值)1.4.3案例三(获取参数修饰注解对应的属

吉时利KEYSIGHT6517B静电计6517A高阻计

Keithley6517B静电计/高阻计是灵敏测量的全球研究实验室标准。吉时利静电计拥有60多年的低电平测量专业知识,可提供低至10aA(10×10-18A)的电流水平和低至1fC的电荷水平的可靠测量,以及高达1018Ω的最高电阻测量。6517B还能够测量最大电压范围(高达200V),输入阻抗超过200TO。特征测量高

EPLAN_001#常用功能(一)

一、栅格设置、背景颜色设置二、插入设备图标(快捷键Insert)按TAB旋转方向三、¶通过左CTRL+ENTER输入四、移动属性文本、复制格式CTRL+B可以移动设备图形中的相关文本(或者右键—文本—移动属性文本)很对多个文本的,可以取消其固定五、改变方向(属性中选择相应的变量)六、直接编辑(可以快速修改元器件名称)七

蓝牙核心规范(V5.4)10.2-BLE 入门笔记之CIS篇

LECIS同步通信同步通信提供了一种使用蓝牙LE在设备之间传输有时间限制的数据的方式。它提供了一个机制,允许多个接收器设备在不同的时间从相同的源接收数据,以同步它们对该数据的处理。LEAUDIO使用同步通信。当使用同步通信时,数据具有有限的时间有效期,在到期时被认为已过期。尚未传输的过期数据将被丢弃。这意味着设备只接收

AI 与大模型引新安全威胁?亚马逊云科技与领创集团的探索和实践

出品|CSDN云计算作为数字化底座,疫情后的安全需求仍在增长。据统计,2023年上半年国内GDP增速为5.4%,其中网络安全市场规模增长10%。另一面,今年爆火的AIGC与大模型,也在被攻击者利用,演化出新型的诈骗与攻击手段。在亚马逊云科技re:Inforce2023中国站上,领创集团信息安全总监赵海旭分享了AI与大模

大数据面试题:Flink延迟数据是怎么解决的

最近朋友面试某猪的时候,被问到一个问题答得面试官不太满意,问的是前司数据延迟问题是怎么解决的,我稍作整理。一、什么是延迟数据大数据处理过程中Join的场景太多太多了,几乎所有公司的APP都会涉及到两条流数据之间的维度拼接,将表变宽等场景,避免不了进行多流Join操作。同时join场景中受网络或物理设备等因素影响也有可能

184_Python 在 Excel 和 Power BI 绘制堆积瀑布图

184_Python在Excel和PowerBI绘制堆积瀑布图一、背景在2023年8月22日微软Excel官方宣布:在Excel原生内置的支持了Python。博客原文笔者第一时间就更新到了Excel的预览版,通过了漫长等待分发,现在可以体验了,先来看看效果。在Excel公式选项卡下Python菜单原来的Excel公示栏

使用PageHelper进行分页

使用PageHelper进行分页1.使用SpringBoot2.不使用SpringBoot的实现1.使用SpringBoot要在SpringMVC中使用PageHelper进行分页,你需要完成以下几个步骤:添加PageHelper依赖:在你的项目中添加PageHelper的Maven或Gradle依赖。例如,如果你使用

热文推荐