【Web - 框架 - Vue】随笔 - Vue CLI - 快速上手

Vue CLI

创建Vue CLI项目

【步骤】

  1. 命名项目空间:在电脑里创建文件夹,用于存储所有项目;
  2. 定位项目空间:在"CMD窗口"里定位到工程的项目空间上;
    • 方法1:(a)用"WIN+R"打开运行窗口,输入"CMD"进入"CMD窗口";(b)输入项目空间所在盘符(如"f:")后回车;©输入"cd 根目录路径(可拖拽文件夹到CMD窗口)"后按"enter"键即可;
    • 方法2:(a)打开项目空间所在文件夹;(b)"ALT+D"输入"CMD"后按"enter"键即可;
  3. 创建项目第一步:在"CMD窗口"输入"vue create 项目名称"后按"enter"键后等待跳转即可(像是卡住了,是在加载,一定不要多次按空格);
  4. 创建项目第二步:用"↑"键和"↓"键进行选择,选择选项(“Manually select features”)后按"enter"键进入下一页面;
  5. 创建项目第三步:用"↑"键和"↓"键选择,"space"键修改,选"Babel"、"Router"、"Vuex"后按"enter"键进入下一页面;
  6. 创建项目第四步:选"2.x"后按下回车,出现"(Y/n)"继续按"enter"键进入下一页面;
  7. 创建项目第五步:出现"?Where do you prefer placing config for Babel,ESLint,etc.?(Use arrow keys)"(翻译:你要将文件放到哪里?),选择第二项("In package.json")后按"enter"键,出现"(y/N)",继续按"enter"键即可;
  8. 加载相关的文件:此时会自动加载相关文件,加载完毕后出现"Successfully created project 项目名称."则表示项目创建成功;

【注意】

  1. 相关的文件最好不要有中文和空格;
  2. 出现"error"相关,关掉重来试试;

启动Vue CLI项目

【步骤】

  1. 用软件"IDEA"打开 "node.js"创建好的项目;
  2. 在软件左下角找到"Terminal"选项卡并打开;
  • 若定位是在项目的根目录上则进行下一步;
  • 若没定位在项目的根目录上定位后下一步;
  1. 输入"npm run serve"后回车,等待加载即可;
  2. "Compiled successfully in XXXms"代表成功;

【说明】

  1. 启动Vue ClI项目也可通过"CMD窗口"这样的方式来完成;
  2. 启动成功的提示还包括"http://localhost:8080"这样的网址;
  3. CMD 窗口中,按下"Ctrl + C" 即可停止已启动的项目;

解析Vue CLI项目

文件夹:.idea

【说明】:软件"IDEA"管理项目时自动生成的,可以无视;

文件夹:node_modules

【说明】:当前项目所需的依赖项(自己不要操作);

【注意】:

  1. 此文件夹不会提交到git,若需要的话用以下方式下载;
  2. 若没有\缺失,可以在"Terminal"输入"npm install"来下载;

文件夹:public

【说明】:

  1. 是当前项目启动后的根路径,可存放各种资源(如.css.js.jpeg);
  2. 若此文件夹下有"1.jpg",则可通过"http://loaclhost:8080/1.jpg"查看;
文件:favicon.ico

【说明】:项目的图标,每个项目在(编译后的)根目录下有此文件,会在浏览器中显示;

文件:index.html

【说明】:当前项目的页面,在"Vue CLI"项目中有且仅有一个"HTML页面"

文件夹:src

文件夹:assets

【说明】:资源文件夹,用于存放静态资源(如 .css.jsjpeg)

【注释】:反正就是存放不随程序运行而变化的文件(如:logo.png);

文件夹:components

【说明】:存放视图组件(被其他视图组件调用的),是可能被复用的组件,并且在不同的调用中,传入的参数可以不同;

文件夹:router
文件:index.js

【说明】:路由配置文件,主要配置访问路径与视图组件的对应关系;

文件夹:store
文件:index.js

【说明】:存储共享的量的文件;

文件夹:views

【说明】:用于存放视图组件;

文件:APP.vue

【说明】:是"index.html"默认加载的视图文件;

文件:main.js

【说明】:当前项目的主".js"文件,通常用于管理一些配置;

【注释】:如:添加了某些依赖项(如:Element UI)后,可能需要在此处导入,才可以使得各".vue"文件可以使用这些依赖项;

文件:.gitignore

【说明】:用于配置哪些文件和文件夹不会提交到"git",如果此项目不提交到"git",则此文件没用;

文件:babel.config.js

【说明】:"Babel"的配置文件,通常不用关心(不需要操作);

文件:jsconfig.json

【说明】:".js"文件的配置文件,通常不用关心(不需要操作);

文件:LICENSE

【说明】:许可证协议文件,默认的项目中通常没有此文件,在"git"上公开的项目通常都包含此文件;

文件:pakcage.json

【说明】:主要配置当前项目的依赖项和项目的编译打包等配置,通常不建议手动修改;

文件:package-lock.json

【说明】:自动管理的配置文件,通常不建议手动修改;

文件:README.md

【说明】:此项目的说明文件,如果此项目提交到"git",通常会显示在"git"的此项目的主页;

【注释】:通常应该在此文件中对项目进行必要的描述(如何配置此项目、如何启动此项目、相关的注意事项等);

文件:vue.config.js

【说明】:".vue"文件的配置文件,通常不用关心(不要操作);

使用Vue CLI项目

.vue文件相关

【说明】:

  1. .vue文件的源代码可以由3大部分组成:(a).页面设计<template>;(b).样式<style>;©.脚本<script>
  2. 这3大部分并不都是必须的,例如某个.vue没有<script>也是完全正常的;

<template>】:

  1. 其直接子标签必须有且仅有一个;
  2. 在其子级里如果出现了<router-view/>,表示此区域将由另一个视图文件来负责设计;
  3. 至于是哪个视图,取决于"router/index.js"中的路由配置;

关于路由的简单配置

【说明】:

  1. router下的index.js文件是用于配置路由的,在此文件中有一个"routes"常量,其属性值是一个对象的数组;
  2. 数组元素中,可以有三个属性:
    • path:路径(不可重复);
    • name:自定义名称,此属性可不配置;
    • component:路径对应的视图组件(某个.vue文件加载得到的对象),有两种加载方式:1.在当前文件的起始位置通过"import"语法静态导入(默认导入);2.在此"component"属性值位置使用箭头函数结合"import"函数进行导入;
  3. 当显示的视图组件中使用到了<router-view />时,将根据当前访问的URL(浏览器中的路径)来决定显示哪个视图;

【例子】:

import HomeView from '../views/HomeView.vue'const routes = [{path: '/',name: 'home',component: HomeView},{path: '/about',name: 'about',component: () => import('../views/AboutView.vue')}]

Vue CLI的嵌套路由

【场景】:在开发实践中,一个项目中,可能存在这样的情况:

  1. 部分页面完全没有共用的部分,所以,在App.vue中,要仅保留一个<router-view/>标签;
  2. 但仍有部分页面存在共用的部分,所以,在其它.vue文件中,也可能需要再次使用到<router-view />
  3. 具体表现为在App.vue中只有<router-view/>,则此处实际显示的就是另外某个.vue了,但是在这些其他的.vue中也会用到<router-view/>,即出现了“嵌套”;

配置相关文件

【步骤】:

  1. 打开CMD/终端窗口并且定位到当前项目的文件夹;
  2. 输入"npm i 需要的配置 -S"按下回车 , 静待即可;
  3. 出现"added ‘数字’ packages in '数字’s"表示成功;

Element UI

【1】安装Element UI

npm i element-ui -S

【2】配置Element UI

位置:"src/main.js"

内容:

import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';
Vue.use(ElementUI);

【3】检查Element UI

说明:

  1. 在"package.json"文件中查看是否有相关依赖("'element-ui':'^2.15.9");
  2. 若有,但不能用,则删掉"node_modules",重新下载即可;

Axios

【1】安装Axios

npm i axios -S

【2】配置Axios

位置:"src/main.js"

内容:

import axios from 'axios'
Vue.prototype.axios = axios

说明:

  1. 需要注意,目标服务器可能是禁止跨域访问的(错误提示中有CORS字样),在Spring Boot工程中,可以使得启动项目的类实现WebMvcConfigurer接口;

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

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

相关文章

Fastjson 1.2.24 反序列化导致任意命令执行漏洞复现(CVE-2017-18349)

写在前面 CVE-2017-18349 指的是 fastjson 1.2.24 及之前版本存在的反序列化漏洞&#xff0c;fastjson 于 1.2.24 版本后增加了反序列化白名单&#xff1b; 而在 2019 年&#xff0c;fastjson 又被爆出在 fastjson< 1.2.47 的版本中&#xff0c;攻击者可以利用特殊构造的 …

retrofit2中,响应参数的int类型会被转为double小数点的解决办法。

背景 retrofit2版本&#xff1a;2.3.0 我使用retrofit2作为接口请求框架。 但是我发现在响应时&#xff0c;解析的响应内容总会有问题。 例如&#xff1a; {"msg":"","code":0.0,"data":"123"}其中的"code"应该…

简述epoll实现

所有学习笔记&#xff1a;https://github.com/Dusongg/StudyNotes 文章目录 epoll数据结构的选择&#xff1f;以tcp为例&#xff0c;网络io的可读可写如何判断&#xff1f;epoll如何做到线程安全&#xff1f;LT和ET如何实现&#xff1f;tcp状态和io的读写有哪些关系&#xff1…

新概念英语第二册(73)

【New words and expressions】生词和短语&#xff08;9&#xff09; record-holder 纪录保持者 truant n. 逃学的孩子unimaginative adj. 缺乏想像力的shame n. 惭愧&#xff0c;羞耻 hitchhike v. 搭便车旅行 m…

Linux fbset命令教程:如何使用fbset命令修改帧缓冲设备设置(附实例详解和注意事项)

Linux fbset命令介绍 fbset是一个系统实用程序&#xff0c;用于显示或更改帧缓冲设备的设置。帧缓冲设备提供了一个简单且独特的接口&#xff0c;用于访问不同类型的图形显示。帧缓冲设备通过位于/dev目录中的特殊设备节点进行访问。 Linux fbset命令适用的Linux版本 fbset命…

【C语言】linux内核tcp_write_xmit和tcp_write_queue_purge

tcp_write_xmit 一、讲解 这个函数 tcp_write_xmit 是Linux内核TCP协议栈中的一部分&#xff0c;其基本作用是发送数据包到网络。这个函数会根据不同情况推进发送队列的头部&#xff0c;确保只要远程窗口有空间&#xff0c;就可以发送数据。 下面是对该函数的一些主要逻辑的中…

Spring Boot单元测试与热部署简析

1 Spring Boot的简介 Spring Boot是一个用于构建独立的、生产级别的Spring应用程序的框架。它简化了Spring应用程序的开发过程&#xff0c;提供了自动配置和默认配置&#xff0c;使得开发者只需专注于业务逻辑的实现&#xff0c;而不用去关注繁琐的配置问题。 Spring …

ElasticSearch 底层读写原理

ElasticSearch 底层读写原理 ​ 写请求是写入 primary shard&#xff0c;然后同步给所有的 replica shard&#xff1b;读请求可以从 primary shard 或 replica shard 读取&#xff0c;采用的是随机轮询算法。 1、ES写入数据的过程 1.选择任意一个DataNode发送请求&#xff0c…

Java17 --- springCloud之LoadBalancer

目录 一、LoadBalancer实现负载均衡 1.1、创建两个相同的微服务 1.2、在客户端80引入loadBalancer的pom 1.3、80服务controller层&#xff1a; 一、LoadBalancer实现负载均衡 1.1、创建两个相同的微服务 1.2、在客户端80引入loadBalancer的pom <!--loadbalancer-->&…

WPF 窗口添加投影效果Effect

BlurRadius&#xff1a;阴影半径 Color&#xff1a;颜色 Direction&#xff1a;投影方向 ShadowDepth&#xff1a;投影的深度 <Window.Effect><DropShadowEffect BlurRadius"10" Color"#FF858484" Direction"300" ShadowDepth&quo…

LLM长上下文外推方法

现在的LLM都集中在卷上下文长度了&#xff0c;最新的Claude3已经支持200K的上下文&#xff0c;见&#xff1a;cost-context。下面是一些提升LLM长度外推能力的方法总结&#xff1a; 数据工程 符尧大佬的最新工作&#xff1a;Data Engineering for Scaling Language Models to …

【Nestjs实操】环境变量和全局配置

一、环境变量 1、使用dotenv 安装pnpm add dotenv。 根目录下创建.env文件&#xff0c;内容如下&#xff1a; NODE_ENVdevelopment使用 import {config} from "dotenv"; const path require(path); config({path:path.join(__dirname,../.env)}); console.log(…

探索代理服务器:保护您的网络安全与隐私

&#x1f34e;个人博客&#xff1a;个人主页 &#x1f3c6;个人专栏&#xff1a;Linux ⛳️ 功不唐捐&#xff0c;玉汝于成 目录 前言 正文 隐藏真实IP地址&#xff1a; 访问控制&#xff1a; 加速访问速度&#xff1a; 过滤内容&#xff1a; 突破访问限制&#xff1…

Python图像处理:1.插值、频域变换与对比度增强

一、几何变换 7.图像的插值 (1)原理介绍 下面对比三种插值方法&#xff0c;分别是最近邻插值法、双线性插值法、卷积插值法&#xff0c;三种方法的前提和特点、优缺点、适用场景如下&#xff1a; 最近邻插值&#xff08;Nearest Neighbor Interpolation&#xff09;&#xf…

Effective C++ 学习笔记 条款20 宁以pass-by-reference替换pass-by-value

缺省情况下C以by value方式&#xff08;一个继承自C的方式&#xff09;传递对象至&#xff08;或来自&#xff09;函数。除非你另外指定&#xff0c;否则函数参数都是以实际实参的副本为初值&#xff0c;而调用端所获得的亦是函数返回值的一个副本。这些副本系由对象的copy构造…

Linux网络套接字补充

(&#xff61;&#xff65;∀&#xff65;)&#xff89;&#xff9e;嗨&#xff01;你好这里是ky233的主页&#xff1a;这里是ky233的主页&#xff0c;欢迎光临~https://blog.csdn.net/ky233?typeblog 点个关注不迷路⌯▾⌯ 目录 一、地址转换函数 二、TCP协议通讯流程 三、…

GPT-prompt大全

ChatGPT目前最强大的的工具是ChatGPT Plus&#xff0c;不仅训练数据更新到了2023年&#xff0c;而且还可以优先访问新功能。对于程序员来说&#xff0c;升级到ChatGPT Plus&#xff0c;将会带来更多的便利和效率提升。 根据 升级ChatGPT Plus保姆级教程&#xff0c;1分钟就可以…

线上应用部署了两台load为1四核服务器

线上应用部署了两台服务器。 项目发布后&#xff0c;我对线上服务器的性能进行了跟踪&#xff0c;发现一台负载为3&#xff0c;另一台负载为1&#xff0c;其中一台四核服务器已经快到瓶颈了&#xff0c;所以我们紧急排查原因。 1、使用TOP命令查看占用CPU较大的负载和进程&…

GPT实战系列-LangChain如何构建基通义千问的多工具链

GPT实战系列-LangChain如何构建基通义千问的多工具链 LLM大模型&#xff1a; GPT实战系列-探究GPT等大模型的文本生成 GPT实战系列-Baichuan2等大模型的计算精度与量化 GPT实战系列-GPT训练的Pretraining&#xff0c;SFT&#xff0c;Reward Modeling&#xff0c;RLHF GPT实…

.Net预处理器指令

1.最常用的预处理器指令#region #endregion&#xff0c;来定义可在大纲中折叠的代码区域. #region MyClass def public class MyClass { static void Main() { } } #endregion 2.定义符号预处理器指令&#xff1a;来定义或取消定义条件编译的符号&#xff1a; #…