Vue项目创建与启动(2023超详细的图文教程)

目录

 一、下载node.js

二、下载vue-cli与webpack插件

三、项目初始化(项目配置详细信息)

四、项目启动

五、Vue项目工程结构(扩展知识)


一、下载node.js

1.检测是否已经安装过node.js

打开控制台,输入

npm -v

如果有会显示对应版本

如果没有会显示无法找到

如果没有则需要进行安装npm

window系统安装过程

nodejs安装及环境配置_Mr.羽猫君的博客-CSDN博客

linux系统安装指令

sudo apt install npm

下载好并配置环境后重新进行版本查询。检测是否成功


二、下载vue-cli与webpack插件

1.设置npm下载为国内镜像(因为npm下载国外的软件会非常慢)指令:

npm config set registry https://registry.npm.taobao.org

#经过下面的配置,以后所有的 npm install 都会经过淘宝的镜像地址下载

2.进行全局安装npm-cli插件

npm install vue-cli -g

如果出现这种情况

说明你可能并没有用管理员身份打开控制台,请你在控制台右键以管理员身份打开。

而Linux用户只需要在指令前加上sudo如下,或者直接输入sudo并回车进入管理员模式。

sudo npm install vue-cli -g

安装好如下图所示:

判断是否安装成功使用以下指令

vue --version

以下解释vue-cli插件作用

  1. 项目初始化和配置:Vue CLI 插件可以在项目初始化时提供一些预配置选项,帮助开发者快速创建一个符合特定需求的项目结构。例如,Vue Router 插件可以集成路由功能,Vuex 插件可以集成状态管理功能。这样,开发者可以通过简单的命令或交互式界面进行选择,自动配置项目的依赖和文件结构。

  2. 开发扩展:Vue CLI 插件可以提供额外的开发支持和工具,使开发体验更加高效和愉悦。例如,ESLint 插件可以集成代码规范检查工具,Stylelint 插件可以集成样式规范检查工具,Unit Testing 插件可以集成单元测试工具等。这些插件可以帮助开发者在开发过程中保持良好的代码质量、一致的代码风格,并提供更好的调试和测试能力。

  3. 构建优化:Vue CLI 插件可以在项目构建过程中提供优化功能,以提高应用程序的性能和用户体验。例如,Babel 插件可以进行 JavaScript 代码转译,将新的 JavaScript 语法转换为浏览器可兼容的代码;CSS 预处理器插件可以将预处理器语言(如 Sass 或 Less)编译为普通的 CSS 代码;Webpack 插件可以进行代码分割、资源压缩、缓存优化等等。

  4. 部署和发布:Vue CLI 插件可以提供一些工具和配置选项,以帮助开发者更轻松地部署和发布其 Vue.js 应用程序。例如,PWA 插件可以帮助将应用转换为渐进式网络应用程序,并自动生成相关的配置文件;Docker 插件可以帮助开发者在容器环境中打包和运行应用程序。

3安装webpack的插件\全局安装

npm install -g webpack

Window系统如果报错请你检查以下同源策略

#像这种都是策略问题,用管理员打开vscode,然后设置策略
get-ExecutionPolicy#执行set-ExecutionPolicy RemoteSigned  然后 get-ExecutionPolicy,显示RemoteSigned就是ok了set-ExecutionPolicy RemoteSigned

安装成功后显示:

以下解释webpack插件作用

  1. 优化代码:Webpack 插件可以通过代码分割、Tree Shaking、Scope Hoisting 等技术,优化 JavaScript 代码和构建结果的大小和性能。例如,CommonsChunkPlugin 插件可以将公共模块提取到单独的文件中,避免重复打包,提高构建速度;UglifyJsPlugin 插件可以将 JavaScript 代码压缩和混淆,减少文件大小,提高网站性能。

  2. 处理资源文件:Webpack 插件可以帮助处理各种资源文件,如图片、CSS、字体等。例如,ImageMinWebpackPlugin 插件可以通过压缩和优化图片文件,减少图片大小,提高网页加载速度;ExtractTextWebpackPlugin 插件可以将 CSS 文件提取到单独的文件中,便于浏览器异步加载。

  3. 打包结果管理:Webpack 插件可以帮助管理构建结果,包括输出目录、文件名、版本号等信息。例如,HtmlWebpackPlugin 插件可以根据模板文件生成 HTML 文件,并自动注入构建结果;CleanWebpackPlugin 插件可以在每次构建前清除输出目录,避免旧文件的残留。

  4. 增强开发体验:Webpack 插件可以提供额外的开发支持和工具,使开发体验更加高效和愉悦。例如,HotModuleReplacementPlugin 插件可以实现热替换功能,允许在不刷新页面的情况下更新模块;FriendlyErrorsWebpackPlugin 插件可以美化 Webpack 构建错误信息,方便开发者进行调试和排错。


三、项目初始化(项目配置详细信息)

输入指令

vue init webpack 文件名称

进入以下选项

第一部分,项目信息类

 第二部分,项目配置类

1.项目构建---一般选择第一个。

  1. Runtime + Compiler:推荐大多数用户使用

    • 使用 Runtime + Compiler 构建方式时,Vue.js 包含完整的运行时和编译器代码。
    • 这种构建方式允许你在 Vue 组件中使用 template 语法,并且会在运行时将模板编译为渲染函数。
    • 渲染函数会在组件实例化过程中动态生成,然后再渲染组件到页面上。
    • 这种方式的好处是比较灵活,可以直接在组件中使用 template,并且支持在 Vue 组件中编写完整的 Vue 特定 HTML 代码。
  2. Runtime-only:轻量化构建,适用于一些特定场景

    • 使用 Runtime-only 构建方式时,Vue.js 只包含运行时代码,不包含编译器。
    • 这种构建方式下,无法在组件中直接使用 template,而是需要使用 render 函数手动编写组件的渲染逻辑。
    • 这样做可以减小 Vue.js 包的体积,通常会比 Runtime + Compiler 构建出来的包小约 6KB (min+gzip)。
    • Runtime-only 构建方式更适合使用手动编写的 render 函数,或者配合使用 Vue 的单文件组件 (.vue 文件) 来开发。

 2.安装路由---一般选择是(Y)

安装 Vue Router 是用于在 Vue.js 应用程序中实现路由功能的步骤。路由是指根据不同的 URL 地址,展示不同的内容或页面的机制。Vue Router 提供了一组工具来实现这个机制,使得在单页应用 (SPA) 中进行页面切换、导航和参数传递变得更加简单和灵活。 

3.是否开启ESLint代码检测---个人需求

 使用 ESLint 是为了在代码编写过程中进行代码风格和质量的检查。ESLint 是一个开源的 JavaScript 代码检查工具,它可以帮助开发者发现并修复代码中的潜在问题,以保证代码的一致性和可读性。

4. 是否开启单元测试--个人需求

设置单元测试是为了在开发过程中确保代码的正确性和稳定性,提高代码质量和可维护性。单元测试是一种自动化测试,它会对代码中的单个模块或函数进行测试,以验证其预期行为是否符合要求。

 5.项目下载方式---一般通过npm下载

 配置过npm镜像后,使用npm对项目下载会更加快速。


四、项目启动

在项目目录下输入指令

npm run dev

查看结果与对应端口

可以看到已经成功启动项目,后面就是项目运行的链接。

使用ctrl+点击链接:http://localhost:8080 可以快速打开对应网页地址

这就是vue项目的主界面了。

想要关闭项目也很简单,在控制台输入Ctrl + c即可终止项目(可能会让你二次确定是否终止填写y即可)

下面介绍vue项目的工程目录以及对应作用,仅作为拓展知识


五、Vue项目工程结构(扩展知识)


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

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

相关文章

Python框架之Flask入门和视图

一、Flask入门和视图 需要安装Pycharm专业版 1. Flask简介 Python后端的2个主流框架 Flask 轻量级框架Django 重型框架 Flask是一个基于Python实现的web开发微框架 官方文档:https://flask.palletsprojects.com/ 中文文档:https://dormousehole.readthe…

防范欺诈GPT

去年,ChatGPT的发布让全世界都感到惊讶和震惊。 突然间出现了一个平台,它比之前的任何其他技术都更深入地了解互联网。人工智能可以被训练成像阿姆一样说唱,以世界著名诗人的风格写作,并精确地翻译内容,以至于它似乎能…

【Unity实战】最全面的库存系统(二)

文章目录 先来看看最终效果前言箱子库存箱子存储物品玩家背包快捷栏满了,物品自动加入背包修复开着背包拾取物品不会刷新显示的问题将箱子库存和背包分开,可以同时打开完结先来看看最终效果 前言 本期紧跟着上期,继续来完善我们的库存系统,实现箱子库存和人物背包 箱子库…

R语言的DICE模型实践技术

随着温室气体排放量的增大和温室效应的增强,全球气候变化问题受到日益的关注。我国政府庄严承诺在2030和2060年分别达到“碳达峰”和“碳中和”,因此气候变化和碳排放已经成为科研人员重点关心的问题之一。气候变化问题不仅仅是科学的问题,同…

React中的状态管理

目录 前言 1. React中的状态管理 1.1 本地状态管理 1.2 全局状态管理 Redux React Context 2. React状态管理的优势 总结 前言 当谈到前端开发中的状态管理时,React是一个备受推崇的选择。React的状态管理机制被广泛应用于构建大型、复杂的应用程序&#xf…

贪心算法学习------优势洗牌

目录 一,题目 二,题目接口 三,解题思路和代码 全部代码: 一,题目 给定两个数组nums1和nums2,nums1相对于nums2的优势可以用满足nums1[i]>nums2[i]的索引i的数目来描述。 返回nums1的任意排序,使其优…

[AUTOSAR][诊断管理][ECU][$3E] 测试设备在线|会话保持

文章目录 一、简介二、服务请求报文定义三、肯定响应四、支持的NRC四、示例步骤(1)supportPosRspMsgIndicationBit=0(2)supportPosRspMsgIndicationBit=1三、示例代码3e_test_present.c一、简介 这个服务的目的是确保诊断服务或者之前激活的通信还处在激活的状态,可以保持…

【51单片机】矩阵键盘与定时器(学习笔记)

一、矩阵键盘 1、矩阵键盘概述 在键盘中按键数量较多时,为了减少I/O口的占用,通常将按键排列成矩阵形式 采用逐行或逐列的“扫描”,就可以读出任何位置按键的状态 2、扫描的概念 数码管扫描(输出扫描):…

Nginx搭配负载均衡和动静分离:构建高性能Web应用的完美组合

目录 前言 一、Nginx简介 1.Nginx是什么 2.Nginx的特点 3.Nginx在哪使用 4.如何使用Nginx 5.Nginx的优缺点 6.Nginx的应用场景 二、负载均衡和动静分离 1.负载均衡 2.动静分离 三、Nginx搭载负载均衡并提供前后端分离后台接口数据 1.Nginx安装 2.tomcat负载均衡 …

68 内网安全-域横向PTHPTKPTT哈希票据传递

目录 演示案例:域横向移动PTH传递-Mimikatz域横向移动PTK传递-Mimikatz域横向移动PTT传递-MS14068&kekeo&local国产Ladon内网杀器测试验收-信息收集,连接等 涉及资源: PTH(pass the hash) #利用lm或ntlm的值进行的渗透测试 PTT(pass the ticket) #利用的票据凭证TGT进行…

最长回文子串-LeetCode5 动态规划

由于基础还不是很牢固 一时间只能想到暴力的解法: 取遍每个子串 总数量nn-1n-2…1 O(n^2) 判断每个子串是否属于回文串 O(n) 故总时间复杂度为O(n^3) class Solution { public:string longestPalindrome(string s) { int max0;string ret;for(int i0;i<s.size();i)for(int…

Run, Don‘t Walk: Chasing Higher FLOPS for Faster Neural Networks(CVPR2023)

文章目录 AbstractIntroduction过去工作存在的不足我们的工作主要贡献&#xff08;待参考&#xff09; Related workCNNViT, MLP, and variants Design of PConv and FasterNetPreliminaryPartial convolution as a basic operatorPConv followed by PWConvFasterNet as a gene…

Android应用集成RabbitMQ消息处理指南

Android应用集成RabbitMQ消息处理指南 RabbitMQ1、前言2、RabbitMQ简介2.1、什么是RabbitMQ2.2、RabbitMQ的特点2.3、RabbitMQ的工作原理2.4、RabbitMQ中几个重要的概念 3、在Android Studio中集成RabbitMQ3.1、在Manifest中添加权限&#xff1a;3.2、在build.gradle(:app)下添…

人工智能与无人驾驶:未来驾驶体验的革命性变革

人工智能与无人驾驶&#xff1a;未来驾驶体验的革命性变革 人工智能&#xff08;AI&#xff09;和无人驾驶技术的迅速发展正在改变我们的交通方式和出行体验。它们结合了先进的感知技术、智能算法和高性能计算能力&#xff0c;为实现自动驾驶提供了可能性。本文将探讨人工智能和…

一种使用wireshark快速分析抓包文件amr音频流的思路方法

解决方案&#xff1a; 1. 使用wireshark过滤amr,并导出原始数据文件&#xff1b; 2.使用ue的二进制编辑模式&#xff0c;编辑该文件&#xff0c;添加amr头&#xff0c;6个字节数据“#!AMR”&#xff0c;字节数据为 23 21 41 4D 52 0A 3.修正格式&#xff1a;通过抓包发现&#…

Mac安装DBeaver

目录 一、DBeaver Mac版软件简介 二、下载地址 三、DBeaver连接失败报错 3.1 问题描述 3.2 连接失败问题解决 一、DBeaver Mac版软件简介 DBeaver Mac版是一款专门为开发人员和数据库管理员设计的免费开源通用数据库工具。软件的易用性是它的宗旨&#xff0c;是经过精心设计…

MacOS安装homebrew

文章目录 官网脚本无法正常下载安装使用HomebrewCN国内安装脚本进行安装找到一份合适的安装脚步执行安装脚本 Homebrew自己的安装位置使用Homebrew安装tree指令验证安装是否成功Homebrew把软件程序都安装到哪里了 Homebrew安装需要依赖Git&#xff0c;请先确保Git已安装成功 Ho…

基于EPICS stream模块的直流电源的IOC控制程序实例

本实例程序实现了对优利德UDP6720系列直流电源的网络控制和访问&#xff0c;先在此介绍这个项目中使用的硬件&#xff1a; 1、UDP6721直流电源&#xff1a;受控设备 2、moxa串口服务器5150&#xff1a;将UDP6721直流电源设备串口连接转成网络连接 3、香橙派Zero3&#xff1a;运…

[学习笔记]TypeScript查缺补漏(二):类型与控制流分析

文章目录 类型约束基本类型联合类型 控制流分析instanceof和typeof类型守卫和窄化typeof判断instanceof判断in判断内建函数&#xff0c;或自定义函数赋值布尔运算 保留共同属性 字面量类型&#xff08;literal type&#xff09;as const 作用 类型约束 TypeScript中的类型是一…

推荐游戏《塞尔达传说:旷野之息》

塞尔达传说&#xff1a;旷野之息 播报编辑讨论32上传视频 2017年任天堂企划制作本部开发的动作冒险游戏 3分钟了解荒野之息 03:59 一分钟了解游戏《塞尔达传说&#xff1a; 旷野之息2》 00:57 旷野之息&#xff1a;20-爬雪山找隐藏神庙获攀爬套装部件&#xff0c;踏上沼泽再…