Vue项目搭建过程

Vue项目搭建过程

1、安装NodeJs

1.1 下载安装包

http://nodejs.cn/download/ 上下载64位安装包,然后进行安装,和普通软件的安装一样。

C:\Users\Administrator>node -v
v16.13.1C:\Users\Administrator>npm -v
8.5.5
1.2 安装cnpm
# 安装cnpm
C:\Users\Administrator>npm install cnpm -gadded 171 packages, removed 378 packages, and changed 281 packages in 18s11 packages are looking for fundingrun `npm fund` for details
npm notice
npm notice New minor version of npm available! 8.5.5 -> 8.15.1
npm notice Changelog: https://github.com/npm/cli/releases/tag/v8.15.1
npm notice Run npm install -g npm@8.15.1 to update!
npm notice
# 查看cnpm的版本
C:\Users\Administrator>cnpm -vcnpm@8.2.0 (C:\Users\Administrator\AppData\Roaming\npm\node_modules\cnpm\lib\parse_argv.js)
npm@8.15.1 (C:\Users\Administrator\AppData\Roaming\npm\node_modules\cnpm\node_modules\npm\index.js)
node@16.13.1 (C:\zsxsoftware\nodejs\node.exe)
npminstall@6.5.0 (C:\Users\Administrator\AppData\Roaming\npm\node_modules\cnpm\node_modules\npminstall\lib\index.js)
prefix=C:\Users\Administrator\AppData\Roaming\npm
win32 x64 10.0.19042
registry=https://registry.npmmirror.com
1.3 安装 vue-cli
# 安装vue-cli
C:\Users\Administrator>cnpm install vue-cli -g(node:16924) ExperimentalWarning: stream/web is an experimental feature. This feature could change at any time
(Use `node --trace-warnings ...` to show where the warning was created)
Downloading vue-cli to C:\Users\Administrator\AppData\Roaming\npm\node_modules\vue-cli_tmp
Copying C:\Users\Administrator\AppData\Roaming\npm\node_modules\vue-cli_tmp\_vue-cli@2.9.6@vue-cli to C:\Users\Administrator\AppData\Roaming\npm\node_modules\vue-cli
Installing vue-cli's dependencies to C:\Users\Administrator\AppData\Roaming\npm\node_modules\vue-cli/node_modules
[1/20] uid@0.0.2 installed at node_modules\_uid@0.0.2@uid
[2/20] commander@^2.9.0 installed at node_modules\_commander@2.20.3@commander
[3/20] semver@^5.1.0 installed at node_modules\_semver@5.7.1@semver
[4/20] coffee-script@1.12.7 installed at node_modules\_coffee-script@1.12.7@coffee-script
[5/20] user-home@^2.0.0 installed at node_modules\_user-home@2.0.0@user-home
[6/20] tildify@^1.2.0 installed at node_modules\_tildify@1.2.0@tildify
[7/20] validate-npm-package-name@^3.0.0 installed at node_modules\_validate-npm-package-name@3.0.0@validate-npm-package-name
[8/20] multimatch@^2.1.0 installed at node_modules\_multimatch@2.1.0@multimatch
[9/20] minimatch@^3.0.0 installed at node_modules\_minimatch@3.1.2@minimatch
[10/20] read-metadata@^1.0.0 installed at node_modules\_read-metadata@1.0.0@read-metadata
[11/20] chalk@^2.1.0 installed at node_modules\_chalk@2.4.2@chalk
[12/20] consolidate@^0.14.0 installed at node_modules\_consolidate@0.14.5@consolidate
[13/20] rimraf@^2.5.0 installed at node_modules\_rimraf@2.7.1@rimraf
[14/20] ora@^1.3.0 installed at node_modules\_ora@1.4.0@ora
[15/20] metalsmith@^2.1.0 installed at node_modules\_metalsmith@2.5.0@metalsmith
[16/20] request@^2.67.0 installed at node_modules\_request@2.88.2@request
[17/20] handlebars@^4.0.5 installed at node_modules\_handlebars@4.7.7@handlebars
[18/20] download-git-repo@^1.0.1 installed at node_modules\_download-git-repo@1.1.0@download-git-repo
[19/20] async@^2.4.0 installed at node_modules\_async@2.6.4@async
[20/20] inquirer@^6.0.0 installed at node_modules\_inquirer@6.5.2@inquirer
execute post install 1 scripts...
[1/1] scripts.postinstall metalsmith@^2.1.0 run "node metalsmith-migrated-plugins.js", root: "C:\\Users\\Administrator\\AppData\\Roaming\\npm\\node_modules\\vue-cli\\node_modules\\_metalsmith@2.5.0@metalsmith"
[1/1] scripts.postinstall metalsmith@^2.1.0 finished in 106ms
deprecate request@^2.67.0 request has been deprecated, see https://github.com/request/request/issues/3142
deprecate coffee-script@1.12.7 CoffeeScript on NPM has moved to "coffeescript" (no hyphen)
deprecate request@2.88.2 › har-validator@~5.1.3 this library is no longer supported
deprecate request@2.88.2 › uuid@^3.3.2 Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
All packages installed (228 packages installed from npm registry, used 5s(network 5s), speed 1.18MB/s, json 217(1.01MB), tarball 4.64MB, manifests cache hit 0, etag hit 0 / miss 0)
[vue-cli@2.9.6] link C:\Users\Administrator\AppData\Roaming\npm\vue@ -> C:\Users\Administrator\AppData\Roaming\npm\node_modules\vue-cli\bin\vue
[vue-cli@2.9.6] link C:\Users\Administrator\AppData\Roaming\npm\vue-init@ -> C:\Users\Administrator\AppData\Roaming\npm\node_modules\vue-cli\bin\vue-init
[vue-cli@2.9.6] link C:\Users\Administrator\AppData\Roaming\npm\vue-list@ -> C:\Users\Administrator\AppData\Roaming\npm\node_modules\vue-cli\bin\vue-list
1.4 安装webpack
# 安装webpack
C:\Users\Administrator>cnpm install webpack -g(node:13296) ExperimentalWarning: stream/web is an experimental feature. This feature could change at any time
(Use `node --trace-warnings ...` to show where the warning was created)
Downloading webpack to C:\Users\Administrator\AppData\Roaming\npm\node_modules\webpack_tmp
Copying C:\Users\Administrator\AppData\Roaming\npm\node_modules\webpack_tmp\_webpack@5.74.0@webpack to C:\Users\Administrator\AppData\Roaming\npm\node_modules\webpack
Installing webpack's dependencies to C:\Users\Administrator\AppData\Roaming\npm\node_modules\webpack/node_modules
[1/24] chrome-trace-event@^1.0.2 installed at node_modules\_chrome-trace-event@1.0.3@chrome-trace-event
[2/24] graceful-fs@^4.2.9 installed at node_modules\_graceful-fs@4.2.10@graceful-fs
[3/24] glob-to-regexp@^0.4.1 installed at node_modules\_glob-to-regexp@0.4.1@glob-to-regexp
[4/24] loader-runner@^4.2.0 installed at node_modules\_loader-runner@4.3.0@loader-runner
[5/24] @types/estree@^0.0.51 installed at node_modules\_@types_estree@0.0.51@@types\estree
[6/24] acorn-import-assertions@^1.7.6 installed at node_modules\_acorn-import-assertions@1.8.0@acorn-import-assertions
[7/24] acorn@^8.7.1 installed at node_modules\_acorn@8.8.0@acorn
[8/24] json-parse-even-better-errors@^2.3.1 installed at node_modules\_json-parse-even-better-errors@2.3.1@json-parse-even-better-errors
[9/24] es-module-lexer@^0.9.0 installed at node_modules\_es-module-lexer@0.9.3@es-module-lexer
[10/24] watchpack@^2.4.0 installed at node_modules\_watchpack@2.4.0@watchpack
[11/24] events@^3.2.0 installed at node_modules\_events@3.3.0@events
[12/24] mime-types@^2.1.27 installed at node_modules\_mime-types@2.1.35@mime-types
[13/24] tapable@^2.1.1 installed at node_modules\_tapable@2.2.1@tapable
[14/24] webpack-sources@^3.2.3 installed at node_modules\_webpack-sources@3.2.3@webpack-sources
[15/24] enhanced-resolve@^5.10.0 installed at node_modules\_enhanced-resolve@5.10.0@enhanced-resolve
[16/24] @types/eslint-scope@^3.7.3 installed at node_modules\_@types_eslint-scope@3.7.4@@types\eslint-scope
[17/24] neo-async@^2.6.2 installed at node_modules\_neo-async@2.6.2@neo-async
[18/24] eslint-scope@5.1.1 installed at node_modules\_eslint-scope@5.1.1@eslint-scope
[19/24] @webassemblyjs/wasm-edit@1.11.1 installed at node_modules\_@webassemblyjs_wasm-edit@1.11.1@@webassemblyjs\wasm-edit
[20/24] @webassemblyjs/ast@1.11.1 installed at node_modules\_@webassemblyjs_ast@1.11.1@@webassemblyjs\ast
[21/24] @webassemblyjs/wasm-parser@1.11.1 installed at node_modules\_@webassemblyjs_wasm-parser@1.11.1@@webassemblyjs\wasm-parser
[22/24] schema-utils@^3.1.0 installed at node_modules\_schema-utils@3.1.1@schema-utils
[23/24] terser-webpack-plugin@^5.1.3 installed at node_modules\_terser-webpack-plugin@5.3.3@terser-webpack-plugin
[24/24] browserslist@^4.14.5 installed at node_modules\_browserslist@4.21.3@browserslist
anti semver @types/eslint-scope@3.7.4 › @types/estree@* delcares @types/estree@*(resolved as 1.0.0) but using ancestor(root package.json)'s dependency @types/estree@^0.0.51(resolved as 0.0.51)
anti semver @types/eslint-scope@3.7.4 › @types/eslint@8.4.5 › @types/estree@* delcares @types/estree@*(resolved as 1.0.0) but using ancestor(root package.json)'s dependency @types/estree@^0.0.51(resolved as 0.0.51)
All packages installed (76 packages installed from npm registry, used 2s(network 2s), speed 2.18MB/s, json 75(1.32MB), tarball 2.31MB, manifests cache hit 0, etag hit 0 / miss 0)
[webpack@5.74.0] link C:\Users\Administrator\AppData\Roaming\npm\webpack@ -> C:\Users\Administrator\AppData\Roaming\npm\node_modules\webpack\bin\webpack.js
# 查看webpack的版本
C:\Users\Administrator>webpack -v
webpack: 5.74.0
webpack-cli: 4.10.0
webpack-dev-server not installed
1.5 安装webpack-cli
# 安装webpack-cli
C:\Users\Administrator>npm install webpack-cli -gadded 117 packages in 6s
# 查看webpack-cli的版本
C:\Users\Administrator>webpack-cli -v
webpack: 5.74.0
webpack-cli: 4.10.0
webpack-dev-server not installed
# 查看模板
C:\Users\Administrator>vue listAvailable official templates:★  browserify - A full-featured Browserify + vueify setup with hot-reload, linting & unit testing.★  browserify-simple - A simple Browserify + vueify setup for quick prototyping.★  pwa - PWA template for vue-cli based on the webpack template★  simple - The simplest possible Vue setup in a single HTML file★  webpack - A full-featured Webpack + vue-loader setup with hot reload, linting, testing & css extraction.★  webpack-simple - A simple Webpack + vue-loader setup for quick prototyping.

2、新建shop-vue项目

使用 webpack 初始化项目:

$ vue init webpack shop-vue? Project name shop-vue
? Project description A Vue.js project
? Author zsx242030 <15110820283@163.com>
? Vue build standalone
? Install vue-router? Yes
? Use ESLint to lint your code? No
? Set up unit tests No
? Setup e2e tests with Nightwatch? No
? Should we run `npm install` for you after the project has been created? (recommended) novue-cli · Generated "shop-vue".# Project initialization finished!
# ========================To get started:cd shop-vuenpm install (or if using yarn: yarn)npm run devDocumentation can be found at https://vuejs-templates.github.io/webpack

生成的项目结构如下:

在这里插入图片描述

然后执行 npm installnpm audit fix 安装一些相关的依赖,会生成 node_modules 目录:

在这里插入图片描述

build:项目构建(webpack)相关代码

config:配置目录,包括端口号等

node_modules :npm加载的项目依赖块

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

assets: 放置一些图片,如logo等

components:该目录里存放的我们的开发文件组件,主要的开发文件都存放在这里了

App.vue:项目入口文件

main.js:项目的核心文件

router:路由配置目录

static:放置一些静态资源文件

.babelrc:用来设置转码的规则和插件的

.editorconfig:用于定义编码样式的文件格式和一组文本编辑器插件组成

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

.postcssrc.js:为了进行移动端适配,PostCss 是一个处理 CSS 的处理工具

index.html:首页入口文件

package.json:项目配置文件

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

使用 npm run dev 启动项目,访问 http://localhost:8080

在这里插入图片描述

接下来使用开发工具打开项目:

在这里插入图片描述

对代码进行修改:

App.vue 修改为:

<template><div id="app"><router-view/></div>
</template><script>
export default {name: 'App'
}
</script><style>
</style>

main.js 修改为:

import Vue from 'vue'
import App from './App'
import router from './router'Vue.config.productionTip = falsenew Vue({el: '#app',router,components: { App },template: '<App/>'
})

HelloWorld.vue 删除,并且在src下新建 views 文件夹, 在该文件夹下新建 Index.vue,其内容改为:

<template><div class="index"><h1>首页</h1></div>
</template><script>
export default {name: 'Index',data () {return {}}
}
</script><style scoped>
</style>

修改 src/router/index.js 为:

import Vue from 'vue'
import Router from 'vue-router'
import Index from '../views/Index'Vue.use(Router)export default new Router({routes: [{path: '/',name: 'Index',component: Index}]
})

重新访问项目:

在这里插入图片描述

至此,前端项目的框架搭建完毕,接下来编写具体的页面。

3、相关依赖

# 使用element-ui,安装element-ui
npm i element-ui -S# 前后端交互axios
npm install axios# 数据存储vuex
npm install vuex --save# 安装字体
npm install font-awesome# 安装comment
npm install commentnpm install vue-router --save-dev
npm install sass-loader node-sass --save-dev

4、npm依赖下载失败解决

# npm清空下载的包
npm cache clean --force 或者
npm cache clear --force && npm install --no-shrinkwrap --update-binary

5、错误

【npm错误】- npm ERR code ERESOLVE 和 npm ERR ERESOLVE could not resolve 问题
# 解决
npm i --legacy-peer-deps

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

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

相关文章

C语言,数组循环哪家好,指针or下标?

日常工作中&#xff0c;我们经常会用到循环遍历数组元素。不考虑只能使用某一特定方式的情况下&#xff0c;有人喜欢用数组下标遍历&#xff0c;有人则喜欢用指针遍历。那么这两者是否有性能差异呢&#xff1f; 我们先来看两个例子&#xff1a; 代码一 /* a.c */ #include &…

【QML】QML复制文件或文件夹,显示进度,多线程复制

1. 效果 可以显示复制文件和文件夹的进度 复制文件&#xff1a; bool copyFileFunc(QString _from, QString _to);复制文件夹&#xff1a;bool copyDirectoryFiles(const QString &_from, const QString &_to);举例&#xff1a; //复制文件copyhelper.copyFileToDir(&…

推荐12款好用的在线平面设计工具,让设计更简单

平面设计是图形表达和信息展示的重要手段&#xff0c;在游戏场景和角色造型、插画、广告制作等艺术设计领域有着重要的应用&#xff0c;如海报设计、包装设计等。 平面设计强调视觉传达&#xff0c;一般以图像、图形和文字等视觉元素为主要手段&#xff0c;通过排版、配色、构…

SpringBoot、Java AOP实现方式

SpringBoot、Java AOP实现方式 搭建项目环境 我这里直接使用Maven创建项目之后再pom.xml中导入包 Spring版本 如果你的版本有最新的&#xff0c;最简单的办法就是&#xff0c;将版本都换成统一的&#xff0c;因为发布时候都是每个版本统一发布的&#xff0c;如果出现不兼容的…

大模型讲座

盘古NLP大模型典型场景 千亿大模型训练难点和解决方案 训练状态不稳定&#xff08;经常训练中断等&#xff09; 解决1&#xff1a;对loss和梯度等多维状态实时监测。对数据、学习率、参数精度、模型梯度进行针对性调整和断点恢复。 调整学习率的代码如下。调整参数、梯度类似…

kali安装HTTrack报错Unable to locate package httrack

kali安装后&#xff0c;直接安装Httrack导致报错 Unable to locate package httrack &#xff08;这里因为解决了&#xff0c;无法重现&#xff0c;则使用错误的包httrackttttt&#xff09; 原因&#xff1a;安装kali后第一次使用系统&#xff0c;则应该运行update命令 sudo …

基于ssm省出口基地公共信息服务平台论文

摘 要 现代经济快节奏发展以及不断完善升级的信息化技术&#xff0c;让传统数据信息的管理升级为软件存储&#xff0c;归纳&#xff0c;集中处理数据信息的管理方式。本n省出口基地公共信息服务平台就是在这样的大环境下诞生&#xff0c;其可以帮助管理者在短时间内处理完毕庞…

算法训练营Day19

#Java #二叉树 #双指针 开源学习资料 Feeling and experiences&#xff1a; 二叉搜索树的最小绝对差&#xff1a;力扣题目链接 给你一个二叉搜索树的根节点 root &#xff0c;返回 树中任意两不同节点值之间的最小差值 。 差值是一个正数&#xff0c;其数值等于两值之差的…

eNSP小实验--实现全网互通

目录 一、建立以下拓扑图&#xff0c;并实现全网互通 二、分析 1、接入层交换机SW4、SW5划分vlan 2、汇聚层交换机SW2,SW3配置ip作为vlan网关&#xff0c;与SW1直连 3、核心交换机SW1配置ip 与汇聚层交换机和R1直连 4、SW1,SW2,SW3,R1配置静态路由&#xff0c;使得vlan10,…

算法学习——回溯算法

回溯算法 理论基础回溯法的效率回溯法解决的问题回溯法模板 组合思路回溯法三部曲 代码 组合&#xff08;优化&#xff09;组合总和III思路代码 电话号码的字母组合思路回溯法来解决n个for循环的问题回溯三部曲代码 组合总和思路代码 组合总和II思路代码 理论基础 什么是回溯法…

教师职业规划

教师是一份充满责任和使命感的职业&#xff0c;也是一个具有广泛影响力的职业。作为一名教师&#xff0c;不仅要传授知识&#xff0c;更要培养学生的品德和能力&#xff0c;为他们的未来发展奠定基础。因此&#xff0c;进行职业规划对于教师来说是非常重要的。 首先&#xff0…

VUE篇之可拖动裁剪框

涉及知识点&#xff1a; offsetLeft, offsetTop, offsetWidth, offsetHeight&#xff1b;offsetX, offsetY&#xff1b;clientX&#xff0c;clientY css:clip-path 学习直通车&#xff1a;HTMLElement.offsetLeft - Web API 接口参考 | MDN MouseEvent.offsetX - Web API 接…

利用原始套接字解决mac地址错误问题【南瑞SysKeeper-2000】

一&#xff1a;案例描述 一键可视顺控图像智能项目在网络部署过程中&#xff0c;对网络限制隔离安全性要求很高&#xff0c;用到正向隔离装置&#xff08;南瑞SysKeeper-2000型号&#xff09;。 图一 正向装置示意图 现场发现问题&#xff1a;直连网线情况下&#xff0c;我方…

德人合科技 | 公司电脑文件加密系统

公司电脑文件加密系统是一种可以对电脑文件进行加密的保护机制。它使用驱动层透明加密技术&#xff0c;能够在用户无感知的情况下对文件进行加密&#xff0c;从源头上保障数据安全和使用安全。 PC端访问地址&#xff1a; www.drhchina.com 此类系统主要有以下几个特点和功能&a…

Web前端-JavaScript(js循环)

1.循环 1.1 for循环 语法结构 for(初始化变量; 条件表达式; 操作表达式 ){//循环体 }名称作用初始化变量通常被用于初始化一个计数器&#xff0c;该表达式可以使用 var 关键字声明新的变量&#xff0c;这个变量帮我们来记录次数。条件表达式用于确定每一次循环是否能被执行。…

Git账户密码http方式的配置

Git账户密码http方式的配置 入门 git在提交时每次都需要输入密码和账号信息&#xff0c;可以将账号和密码进行持久化存储&#xff0c; 当git push的时候输入一次用户名和密码就会被记录&#xff0c; 不需要每次输入&#xff0c;提高效率&#xff0c;进行一下配置&#xff1…

深入学习《大学计算机》系列之第1章 1.4节——从二进制起源窥见的奥秘

一.欢迎来到我的酒馆 第1章 1.4节&#xff0c;从二进制起源窥见的奥秘。 目录 一.欢迎来到我的酒馆二.二进制的起源1.关于莱布尼茨2.莱布尼茨和牛顿的恩怨情仇 二.二进制的起源 本节内容属于知识拓展&#xff0c;通过讲解几个小故事&#xff0c;向大家介绍二进制的起源。 1.关…

基于低代码的文档管理系统:实现高效协作与控制

在企业和组织中&#xff0c;文档管理是一项至关重要的任务。文档包括各种类型的信息&#xff0c;如合同、报告、会议记录、产品规格等&#xff0c;它们都需要被妥善保管并确保随时可供查阅。 传统的文档管理方法往往效率低下&#xff0c;且容易出错。随着技术的发展&#xff0…

亚信安慧AntDB数据库引领大数据新纪元,星河案例彰显卓越表现

亚信科技及其附属公司亚信安慧在第六届大数据“星河”案例评选中&#xff0c;凭借其卓越的数据库技术实力&#xff0c;再次站在了行业的聚光灯下。这次的显著成果不仅是对亚信科技技术能力的肯定&#xff0c;更是对其在数据库领域持续创新和领先地位的认可。 图&#xff1a;亚信…

3D小球跑酷

目录 一、前言 二、开发环境 三、场景搭建 1. 创建项目 2. 创建场景内物体 2.1 创建跑道 2.2 创建玩家 2.3 创建障碍物 2.4 改变跑道和障碍物的颜色 2.4.1 创建材质 2.4.2 给跑道和障碍物更换材质 四、功能脚本实现 1. 创建玩家脚本 2. 相机跟随 3. 胜负的判定 3…