Vue项目创建

Vue项目创建

一、环境准备

1.1.安装 node.js【下载历史版本node-v14.21.3-x64】

下载地址:https://nodejs.org/en/





1.2.安装


1.3.检查是否安装成功:

java 复制代码
npm -v
node -v

1.4.配置npm在安装全局模块时的路径和缓存cache的路径

默认会将模块安装在C:\Users\用户名\AppData\Roaming路径下的npm和npm_cache中且占用C盘空间

在node.js安装目录Node下新建两个文件夹 node_global和node_cache

java 复制代码
npm config set prefix "D:\DeveloperTools\Node\node_global"

npm config set cache "D:\DeveloperTools\Node\node_cache"

npm config list

1.5.配置系统变量:Node\node_global\node_modules

java 复制代码
NODE_PATH

D:\DeveloperTools\Node\node_global\node_modules

在path里面加 %NODE_PATH%


1.6.编辑用户变量里的Path:Node\node_global

编辑用户变量里的Path,将相应npm的路径改为:

java 复制代码
D:\DeveloperTools\Node\node_global

1.7.安装淘宝镜像

官网:http://www.npmmirror.com/

使用管理员身份运行命令

java 复制代码
# 国外npm本身
npm config set registry https://registry.npmjs.org/

# 淘宝镜像
npm config set registry https://registry.npmmirror.com

1.8.查看当前的npm镜像设置:

命令查看配置

java 复制代码
npm root -g

npm config list

npm config get prefix

1.9.错误提示淘宝镜像过期

npm 淘宝镜像已经从 registry.npm.taobao.org 切换到了 registry.npmmirror.com

java 复制代码
# 原来淘宝镜像
npm config set registry https://registry.npm.taobao.org

# 删除
npm config delete registry

# 清空缓存
npm cache clean --force

# 配置列表
npm config list

1.10.全局安装webpack

使用管理员身份运行命令

java 复制代码
npm install webpack -g 

npm install webpack-cli -g

# 查看安装webpack的版本号
npm webpack -v
npm webpack-cli -v


1.11.webpack : 无法加载文件 D:\Program Files\nodejs\node_global\webpack.ps1,因为在此系统上禁止运行脚本

解决方案:

java 复制代码
以管理员身份运行
执行:get-ExecutionPolicy,显示Restricted,表示状态是禁止的
执行:set-ExecutionPolicy RemoteSigned
这时再执行get-ExecutionPolicy,就显示RemoteSigned
java 复制代码
get-ExecutionPolicy

#set-ExecutionPolicy Restricted
set-ExecutionPolicy RemoteSigned

get-ExecutionPolicy

1.12.全局安装Vue-cli

java 复制代码
#vue-cli3 可视化,使用vue-cli3.x初始化项目安装这个
npm install -g @vue/cli

#vue-lcli2,使用vue-cli2.x初始化项目安装这个
npm install -g vue-cli

vue --version


二、vite对比webpack

2.1.Webpack

将所有的模块提前编译、打包进 bundle 中,不管这个模块是否被用到,随着项目越来越大,打包启动的速度自然越来越慢。

2.2.Vite

瞬间开启一个服务,并不会先编译所有文件,当浏览器用到某个文件时,Vite 服务会收到请求然后编译后响应到客户端。

2.3使用webpack打包模式

2.4.vite打包模式

三、创建Vue项目

vue官网:https://cn.vuejs.org/

3.1.方法一【UI界面创建】

java 复制代码
vue ui

http://localhost:8000/project/select








3.2.方法二:vue init webpack 项目名【vue-cli2.x的初始化方式】

java 复制代码
#创建项目
vue init webpack test-vue

#进入目录
cd teat-vue

#初始化
npm install

#运行
npm run dev
java 复制代码
#vue 3.0 使用 vue-cli 2.0创建webpack项目时出现
#创建命令
vue init webpack test-vue2

Command vue init requires a global addon to be installed.
Please run npm i -g @vue/cli-init and try again.

操作提示Please run npm i -g @vue/cli-init
执行npm i -g @vue/cli-init之后,再次执行创建命令即可
注意:项目名不要出现大写字母

3.3.方法三:vue create 项目名【vue-cli3.x的初始化方式】

java 复制代码
#创建项目
vue create test-vue3

#进入目录
cd teat-vue3

#初始化
npm install

#运行
npm run serve

3.4.方法四:npm init vue@latest

java 复制代码
npm init vue@latest

npm init vue@latest 创建的 vue3 项目是基于 Vite 打包的
npm init vue@latest 安装并执行 create-vue,它是 Vue 官方的项目脚手架工具

四、Vite-下一代的前端工具链

Vite官网:https://www.vitejs.net/guide/

Vite 需要 Node.js 版本 >= 12.0.0

4.1.使用vite构建项目

java 复制代码
npm create vite@latest

npm init vite@latest

4.2.构建一个 Vite + Vue 项目

java 复制代码
# npm 6.x
npm create vite@latest my-vue-app --template vue
npm init vite@latest my-vue-app --template vue

# npm 7+, 需要额外的双横线:
npm create vite@latest my-vue-app -- --template vue
npm init vite@latest my-vue-app -- --template vue



五、nvm 安装与使用

github官网下载:https://github.com/coreybutler/nvm-windows/releases

endl

相关推荐
流烟默19 小时前
SSE 实战:在 SpringBoot + Vue 项目中零依赖实现轻量级实时消息推送
vue.js·spring boot·后端·sse
执子念的飞鱼20 小时前
纯前端预览 275 种文件格式是怎么做到的
前端·vue.js·react.js
vx_Biye_Design1 天前
PHP中医养生馆预约系统60841-计算机课程设计、毕业设计
vue.js·spring boot·后端·mysql·php·课程设计·express
gc_22991 天前
Vue框架学习(1:环境搭建)
vue.js
我的div丢了肿么办2 天前
element-plus表格使用:filter-method过滤导致出现无数据
前端·javascript·vue.js
贾公子2 天前
AI 内容检测 API 接入实战——异步任务、幂等键与轮询的正确写法
vue.js
星光不问赶路人2 天前
Vue 项目类型检查:深入理解 vue-tsc --build
前端·vue.js
WeiXin_DZbishe2 天前
基于springboot装修风格选择系统的设计与开发-计算机毕设【课程设计】77964
java·vue.js·spring boot·后端·python·php·课程设计
雪碧聊技术2 天前
Vue 一个页面中使用多个同类组件出现“串数据“现象?一个 key 就能解决
vue.js·v-show·一个页面使用多个相同组件·解决数据错乱·v-if、key
Java小卷2 天前
Vue3 动态表单支持弹框组件
前端·vue.js·低代码