如何搭建一个vue项目(完整步骤)

搭建一个新的vue项目

  • 一、安装node环境
  • 二、搭建vue项目环境
    • 1、全局安装vue-cli
    • 2、进入你的项目目录,创建一个基于 webpack 模板的新项目
    • 3、进入项目:cd vue-demo,安装依赖
    • 4、npm run dev,启动项目
  • 三、vue项目目录讲解
  • 四、开始我们的第一个vue项目
    • 1、封装新组件
    • 2、讲讲父子组件
    • 3、使用路由搭建单页应用
    • 4、如何用less写样式
  • 五、补充
    • 1、解决vue启动后不自动访问浏览器的问题
    • 2、解决端口冲突

一、安装node环境

1、下载地址为:https://nodejs.org/en/

2、检查是否安装成功:如果输出版本号,说明我们安装node环境成功

node -v

npm -v

在这里插入图片描述

3、为了提高我们的效率,可以使用淘宝的镜像:http://registry.npmmirror.com

输入:npm install -g cnpm –registry=http://registry.npmmirror.com,即可安装npm镜像,以后再用到npm的地方直接用cnpm来代替就好了。

npm install -g cnpm –registry=http://registry.npmmirror.com

在这里插入图片描述

检查是否安装成功:

cnpm -v

在这里插入图片描述

二、搭建vue项目环境

1、全局安装vue-cli

npm install --global @vue-cli 是 vue 3.x及更高版本的 手脚架
npm install --global vue-cli 是 vue 2.x 的 手脚架(此文使用这个)
ps: 命令中的–global 可以更改成为–g

npm install --global vue-cli

在这里插入图片描述

2、进入你的项目目录,创建一个基于 webpack 模板的新项目

在这里插入图片描述

说明

Vue build                                    ==>        打包方式,回车即可;
 
Install vue-router                        ==>        是否要安装 vue-router,项目中肯定要使用到 所以Y 回车;
 
Use ESLint to lint your code       ==>        是否需要 js 语法检测 目前我们不需要 所以 n 回车;
 
Set up unit tests                          ==>       是否安装 单元测试工具 目前我们不需要 所以 n 回车;
 
Setup e2e tests with Nightwatch ==>       是否需要 端到端测试工具 目前我们不需要 所以 n 回车;

3、进入项目:cd vue-demo,安装依赖

在这里插入图片描述

安装成功后,项目文件夹中会多出一个目录: node_modules
在这里插入图片描述

4、npm run dev,启动项目

npm run dev

项目启动成功:

在这里插入图片描述

在这里插入图片描述

三、vue项目目录讲解

在这里插入图片描述

1、build:构建脚本目录

	1)build.js               ==>  生产环境构建脚本;
	
	2)check-versions.js      ==>  检查npm,node.js版本;
	    
	3)utils.js               ==>  构建相关工具方法;
	    
	4)vue-loader.conf.js     ==>  配置了css加载器以及编译css之后自动添加前缀;
	    
	5)webpack.base.conf.js   ==>  webpack基本配置;
	    
	6)webpack.dev.conf.js    ==>  webpack开发环境配置;
	    
	7)webpack.prod.conf.js   ==>  webpack生产环境配置;

2、config:项目配置

	1)dev.env.js   ==>  开发环境变量;
	
	2)index.js     ==>  项目配置文件;
	
	3)prod.env.js  ==>  生产环境变量;

3、node_modules:npm 加载的项目依赖模块

4、src:开发目录

src:这里是我们要开发的目录,基本上要做的事情都在这个目录里。里面包含了几个目录及文件:

	1)assets:资源目录,放置一些图片或者公共js、公共css。这里的资源会被webpack构建;
	
	2)components:组件目录,我们写的组件就放在这个目录里面;
	
	3)router:前端路由,我们需要配置的路由路径写在index.js里面;
	
	4)App.vue:根组件;
	
	5)main.js:入口js文件;

5、static
  static:静态资源目录,如图片、字体等。不会被webpack构建

6、index.html
  index.html:首页入口文件,可以添加一些 meta 信息等

7、package.json
  package.json:npm包配置文件,定义了项目的npm脚本,依赖包等信息

8、README.md
  README.md:项目的说明文档,markdown 格式

9、.xxxx文件
  .xxxx文件:这些是一些配置文件,包括语法配置,git配置等

四、开始我们的第一个vue项目

1、封装新组件

在components目录下新建一个views目录,里面写我们的vue组件

1)开始我们的第一个组件:

a:在views目录下新建First.vue
b:在router目录下的index.js里面配置路由路径

在这里插入图片描述

c:template 写 html,script写 js,style写样式

在这里插入图片描述

d:输入ip: http://localhost:8010/#/first,查看页面效果

在这里插入图片描述

注意
一个组件下只能有一个并列的 div,以下写法是错误:

在这里插入图片描述

数据要写在 return 里面,而不是像文档那样子写,以下写法错误:

在这里插入图片描述

2、讲讲父子组件

1)在components目录下新建sub文件夹,用于存放一下可以复用的子组件。比如新建一个Confirm.vue组件

在这里插入图片描述

3)在父组件中引入子组件

引入:import Confirm from ‘…/sub/Confirm’

注册:在<script></script>标签内的 name代码块后面加上 components: {Confirm}

使用:在<template></template>内加上<confirm></confirm>

完整代码:

在这里插入图片描述

2)父子组件通信

子组件:

在这里插入图片描述

父组件:

在这里插入图片描述

3、使用路由搭建单页应用

1)按照以上方法,新建一个Second.vue组件

2)路由跳转:<router-link to=“/second”>去第二个页面<router-link>
    
在这里插入图片描述

在这里插入图片描述

路由跳转之后,注意观察路径变化:

在这里插入图片描述

可以看到,在html中解析成了a标签
在这里插入图片描述

这里只是简单的介绍了一下路由的使用,更多详细信息,请前往官网学习:https://router.vuejs.org/zh/

4、如何用less写样式

1)安装less依赖:npm install less less-loader --save
错误如下
在这里插入图片描述
原因:
这是less-loader的12.2.0版本和node.js版本不兼容,要求大于18.12.0或者降低less-loader版本

解决:(与自己安装的版本兼容)
使用这个可以npm install less less-loader@4.1.0 --save

npm install less less-loader@4.1.0 --save

在这里插入图片描述

安装成功之后,可在package.json中看到,多增加了2个模块:

在这里插入图片描述

2)编写less

在这里插入图片描述

五、补充

1、解决vue启动后不自动访问浏览器的问题

解决vue启动后不自动访问浏览器的问题:当我们输入npm run dev,运行项目,命令行提示我们运行成功,但是浏览器也没有自动打开,只能自己手动输入。

解决:

1)打开config  ==> index.js

在这里插入图片描述

2)module.exports配置中找到autoOpenBrowser,默认设置的是false

在这里插入图片描述

3)将autoOpenBrowser改为true

在这里插入图片描述

4)Ctrl+C,然后我们重启一下,就能自动打开浏览器了

在这里插入图片描述

2、解决端口冲突

为了避免端口冲突,也可以修改port,打开目录同上

在这里插入图片描述

修改成功:

在这里插入图片描述

end


参考:https://www.cnblogs.com/yanxulan/p/8978732.html
最后附上demo地址:https://github.com/yanxulan/vue-demo.git


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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

正点原子LWIP学习笔记(一)lwIP入门

lwIP入门 一、lwIP简介&#xff08;了解&#xff09;二、lwIP结构框图&#xff08;了解&#xff09;三、如何学习lwIP&#xff08;熟悉&#xff09; 一、lwIP简介&#xff08;了解&#xff09; lwIP是一个小型开源的TCP/IP协议栈 阉割的TCP/IP协议 TCP/IP协议栈结构&#xff0…

57. UE5 RPG 处理AI敌人转向以及拾取物品的问题

在上一篇文章中&#xff0c;我们实现了使用AI行为树控制敌人进行移动&#xff0c;它们可以一直跟随玩家&#xff0c;虽然现在还未实现攻击。但在移动过程中&#xff0c;我发现了有两个问题&#xff0c;第一个是敌人转向的时候很僵硬&#xff0c;可以说是瞬间转向的&#xff0c;…

【kubernetes】多 master 高可用集群架构部署

目录 前言 一、环境部署 二、master02 节点部署 1、拷贝相关文件 2、修改配置文件 3、启动各服务并设置开机自启 4、 查看node节点状态 三、负载均衡部署 1、部署 nginx 服务 1.1 编译安装 nginx 1.2 修改 nginx 配置文件 2、部署 keepalived 服务 2.1 yum安装 ke…

python打包exe,通过文件动态传参运行exe【拿来即用】

配置虚拟环境 安装包&#xff1a;pip install pipenv 创建虚拟环境&#xff1a;创建一个新文件夹&#xff0c;在此目录&#xff0c;打开cmd&#xff0c;输入&#xff1a;pipenv install&#xff0c; 进入虚拟环境&#xff1a;pipenv shell 安装所需的依赖包&#xff1a;pip in…

无人机监测系统:天空之眼,精准掌握地球脉动

在当今信息化快速发展的时代&#xff0c;无人机技术以其独特的优势&#xff0c;正在成为资源调查、环境监测和规划支持的重要工具。无人机监测系统通过搭载多种传感器和设备&#xff0c;能够快速、高效地获取地表信息&#xff0c;为决策提供科学依据。 项目背景 随着全球环境…

VScode解决报错“Remote-SSH XHR failed无法访问远程服务器“的方案

VScode解决报错"Remote-SSH XHR failed无法访问远程服务器"的方案 $ ls ~/.vscode-server/bin 2ccd690cbff1569e4a83d7c43d45101f817401dc稳定版下载链接&#xff1a;https://update.code.visualstudio.com/commit:COMMIT_ID/server-linux-x64/stable 内测版下载链接…

51建模网AR虚拟试用,让网购不再只靠想象!

在数字化的浪潮中&#xff0c;网购已成为现代人生活的一部分。然而&#xff0c;传统的网购模式常常因为无法直接试穿、试用商品&#xff0c;导致买家在收到商品后感到失望&#xff0c;特别是面对大件家居产品时&#xff0c;仅凭屏幕上的图片和尺寸描述&#xff0c;很难准确地把…

阿里云数据库 SelectDB 版全面商业化,开启现代化实时数据仓库的全新篇章

2024 年 5 月 21 日&#xff0c;由阿里云联合飞轮科技共同举办的「阿里云数据库 SelectDB 版商业化产品发布会」于线上召开。阿里巴巴集团副总裁、阿里云数据库产品事业部负责人李飞飞宣布&#xff0c;阿里云数据库 SelectDB 版在中国站及国际站全面发布&#xff0c;正式开启商…

Web应用防火墙的重要性

网络安全是一个永恒的话题&#xff0c;尤其是在未知威胁不断涌现的情况下。企业网络安全是保障业务稳定运行的基础&#xff0c;Web应用防火墙(WAF)是企业网络安全的重要屏障&#xff0c;其性能直接影响到网络服务的质量和安全。 Web应用防火墙是什么&#xff1f; Web应用防火墙…

RS8751XF功能和参数介绍及PDF资料

以下是关于RS8751XF的功能和参数的介绍&#xff1a; 功能描述: 高速、宽带单通道运算放大器 轨到轨输入和输出&#xff0c;确保较大的动态范围 极高的增益带宽乘积&#xff08;GBW&#xff09;&#xff1a;250 MHz&#xff0c;适合高频应用 极高的压摆率&#xff08;SR&#xf…

【UE HTTP】“BlueprintHTTP Server - A Web Server for Unreal Engine”插件使用记录

1. 在商城中下载“BlueprintHTTP Server - A Web Server for Unreal Engine”插件 该插件的主要功能有如下3点&#xff1a; &#xff08;1&#xff09;监听客户端请求。 &#xff08;2&#xff09;可以将文件直接从Unreal Engine应用程序提供到Web。 &#xff08;3&#xff…

Vision Mamba论文阅读(主干网络)

这几天被Mamba刷屏了&#xff0c;又由于本人是做视觉方面任务的&#xff0c;固来看看mamba在视觉上的应用。 今天分享的是Vision Mamba: Vision Mamba: Efficient Visual Representation Learning with Bidirectional State Space Model 论文网址&#xff1a;https://arxiv.or…

【蓝桥杯】

题目列表 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) #include<bits/stdc.h> using llunsigned long long; #define int ll const int N2e510; int k0; std::string s; int a,b,c,d; void solve() {char op;std::cin>>op;if(opA){std::string s;for(int i1;i&l…

vue3结合element-plus之如何优雅的使用表格

背景 表格组件的使用在后台管理系统中是非常常见的,但是如果每次使用表格我们都去一次一次地从 element-plus 官网去 复制、粘贴和修改成自己想要的表格。 这样一来也说得过去,但是如果我们静下来细想不难发现,表格的使用都是大同小异的,每次都去复制粘贴,对于有很多表格…

5月23日 网络编程day6

1.IO多路复用的原理&#xff1f; 答&#xff1a;将文件描述符放入一个集合中&#xff0c;当集合中有事件产生&#xff0c;移除其他文件描述符&#xff0c;执行剩下的文件描述符所对应的任务&#xff0c;往复循环。 2.实现IO多路复用可以使用哪些函数完成&#xff1f; 答&…

【设计模式】JAVA Design Patterns——Balking(止步模式)

&#x1f50d;目的 止步模式用于防止对象在不完整或不合适的状态下执行某些代码。 &#x1f50d;解释 真实世界例子 洗衣机中有一个开始按钮&#xff0c;用于启动衣物洗涤。当洗衣机处于非活动状态时&#xff0c;按钮将按预期工作&#xff0c;但是如果已经在洗涤&#xff0c;则…

嵌入式科普(18)Ubuntu在移动硬盘的安装和启动

目录 一、概述 二、应用场景 三、移动硬盘安装Ubuntu 3.1 移动硬盘格式化 3.2 VMware安装Ubuntu到移动硬盘 四、电脑BIOS启动移动硬盘Ubuntu 五、从VMware启动移动硬盘Ubuntu 六、问题解决(坑)和思考提问 嵌入式科普(18)Ubuntu在移动硬盘的安装和启动 一、概述 在移动硬…

Python实现天气数据采集

Python实现天气数据采集 一、需求介绍二、完整代码一、需求介绍 本次天气数据采集的需求是获取每日的最高温、最低温、风力、风向、天气状况、AQI指数,如图所示,完整代码附后: 本次采集的目标网址是2345天气网: 上图的URL中,beijing是城市名称的缩写,54511即为城市代码…

【机器学习】前沿探索,如何让前端开发更加搞笑

在当今数字化时代&#xff0c;机器学习的崛起为前端开发带来了巨大的机遇和挑战。随着人工智能和数据科学的不断进步&#xff0c;前端工程师不再局限于传统的界面设计和交互体验&#xff0c;而是开始探索如何将机器学习技术融入到他们的工作中&#xff0c;以创造更加智能、个性…

Video-FocalNets: Spatio-Temporal Focal Modulation for Video Action Recognition

标题&#xff1a;Video-FocalNets&#xff1a;用于视频动作识别的时空聚焦调制 源文链接&#xff1a;Wasim_Video-FocalNets_Spatio-Temporal_Focal_Modulation_for_Video_Action_Recognition_ICCV_2023_paper.pdf (thecvf.com)https://openaccess.thecvf.com/content/ICCV202…