vue-cli

vue-cli脚手架

案例一:

在这里插入图片描述在这里插入图片描述

案例二:

在这里插入图片描述

案例三:

在这里插入图片描述

一、脚手架简介

Vue脚手架是Vue官方提供的标准化开发工具(开发平台),它提供命令行和UI界面,方便创建vue工程、配置第三方依赖、编译vue工程

1. webpack

前端项目工程化的标志之一就是引入了『编译』环节,而 webpack 就是最常见、最常用的前端项目编译工具。

如果作类比的话,那么 npm + webpack ≈ maven

2、脚手架介绍

a、安装vue-cli4

  • 删除已安装的 vue-cli
npm uninstall -g @vue/cli
  • 先安装淘宝镜
npm config set registry https://registry.npm.taobao.org

安装cli

npm install -g @vue/cli

在这里插入图片描述

安装结束后,你可以通过 vue --versionvue -V 查看 vue-cli 的版本信息

b、配置vue环境变量

在这里插入图片描述

把这个路径配到path里

在这里插入图片描述

3、创建vue-cli4项目

3.1、第一步

使用如下命令开始创建 vue 项目

vue create 项目名

你会看到如下内容:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zXIDI8NN-1691408240403)(assets\1642130918829.png)]

  • 第一项和第二项( default ...)表示的是使用默认配置创建 vue 项目。

  • 第三项( Manually ...)表示手动对 vue 项目的各方面进行设置

3.2、第二步

在上一步选中第二项后,你会看到如下界面:

对于每一项的功能,此处做个简单描述:

Babel:支持使用 babel 做转义。
TypeScript:支持使用 TypeScript 书写源码。
Progressive Web App (PWA) Support PWA:支持。
Router:支持 vue-router。
Vuex:支持 vuex。
CSS Pre-processors:支持 CSS 预处理器。
Linter / Formatter:支持代码风格检查和格式化。
Unit Testing:支持单元测试。
E2E Testing: 支持 E2E 测试。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Ude8JJLx-1691408240403)(assets\1642131749279.png)]

3.3、第三步

选择vue版本为2,不要选3,不要选3

在这里插入图片描述

3.4、第四步

如果在功能选择界面中选中了 Router,那么我们接下来会看到如下界面(如果功能界面没有选择 Router,就会跳过这个界面):

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-aXdHdjRc-1691408240404)(assets\1642131167696.png)]

在这个界面中,vue-cli 在询问你,对于 Router 你是否以它的 history 模式使用它?默认值是 Yes

如果不使用 Router 的 history 模式,那自然就是 hash 模式。这里我们输入 n,表示使用 Router 的 hash 模式。

3.5、第五步

在设置完你所要使用的各个功能的设置之后(例如,上面的 Router 的 history / hash 模式的设置), 我们会看到下面界面:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oMenAiST-1691408240404)(assets\1642131782624.png)]

在这个界面中,vue-cli 是在询问你:是将所有的配置都放在 pacakge.json 一个文件中,还是将各个功能的配置分开存放在独立的文件中?

选择第一项:分开存放。

3.6、第六步

这是 vue-cli 创建 vue 项目的最后一个界面:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CdFvPlZr-1691408240404)(assets\1642131850769.png)]

在这里,vue-cli 是在询问你:是否将你的这些设置保留下来作为默认的项目设置的模板。默认值是 N

我们输入 N ,或者直接按回车确认进入安装界面:

3.7、第七步

在控制台中输入:npm run serve 启动项目

三、项目结构说明

1、项目结构

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YwQvcGJj-1691408240405)(assets\1642132171277.png)]

项目目录说明:

#说明
node_modules 目录项目所依赖的包的存放目录(封装webpack 依赖包)
public 目录存放项目所需的静态资源文件目录
src 目录存放项目的源码文件的目录
babel.config.js 文件babel 配置文件
package.json 文件整个项目的配置文件
src/main.js 文件整个项目的入口文件,并且在这里引入全局使用的 .vue、.css 文件

2、src目录说明

  • assets 静态资源 (css、 js 、 image 、字体图标)

  • views 放置组件页面

  • components 放置组件页面中嵌套的组件

  • App.vue 根组件 => 指定路由出口

    • 脚手架之后,所有的组件都将渲染到 app.vue 中
  • app 中的 #app 还是 index.html 中的 #app, app.vue 中的会覆盖前者,可以通过分别添加 title 属性验证一下

  • 路由出口要写在 app.vue 组件模板中

  • main.js

    • 入口 js 文件

    • 作用 : 创建 vue 实例,导入其他组件并挂在到 vue 实例上

    • Vue.config.productionTip = false 不要打印提示

    • 检测 no new : 见后面的检测警告

      new Vue({el: '#app', // 目标显示router,   // 挂载路由components: { App }, // 注册组件 Apptemplate: '<App/>' // 模板显示组件 app
      })
      

3、单文件组件

vue-cli 创建的 vue 项目中,我们看到有一类后缀名为 .vue 的文件,我们称为『单文件组件』。

单文件组件的组成结构分三部分:

  • template 组件的模板区域
  • script 业务逻辑区域
  • style 样式区域

例如:

<template><!-- 这里用于定义 Vue 组件的模板内容 -->
</template><script>// 这里用于定义 Vue 组件的业务逻辑export default {data(){return { // 私有数据} }, methods: {} // 处理函数,created(){}
}
</script><style scoped>/* 这里用于定义组件的样式 */
</style>

4、vue.config.js 文件

默认情况下通过 serve 命令运行项目会占用 8080 端口,在 vue.config.js 的文件加入如下配置修改端口号:

module.exports = {devServer: {port: 8888}
}

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1Af5ga4i-1691408240405)(assets\1642142825176.png)]

四、安装axios包

1、安装axios

安装方式

使用 npm 命令安装
npm install axios

2、vue-cli 中main.js引入并使用 axios

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

五、VUE-CLI解决跨域问题

vue-cli 解决开发过程中的跨域问题是利用到了 webpack 在开发环境中所提供的代理服务器(http-proxy-middleware)。

前端的 ajax 请求并不是直接发给后台服务器,而是发给了代理服务器,再由代理服务器转发给后台服务器;返回数据的时候,同样也是由代理服务器接收到后台服务器的返回,然后代理服务器再将返回结果转发给前端。

在vue-cli项目的根目录vue.config.js,添加如下代码

module.exports = {transpileDependencies: true,devServer: {port: 8888,  //vue项目访问端口proxy: {"/api": { // 1target: 'http://127.0.0.1:8080',   // 2changeOrigin: true, // 3pathRewrite: {'^/api': '/' // 4}}}}}
  • 配置说明

    1、所有以 /api 开头的请求都要求代理服务器进行转发。
    2、要求代理服务器(vue 的 http-proxy-middleware)将我们发给它的请求转发到 xxx 地址,即,真实的后台服务器的根路径。这里需要注意的一点是,这里必须加上 http:// 前缀。
    3、是否是跨域请求?这基本上肯定是废话,不跨域就没有必要配置这个 proxy 了。
    4、代理服务器转发时是否需要改写 URI,以及如何改写。
    

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

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

相关文章

Llama 2 云端部署与API调用【AWS SageMaker】

Meta 刚刚发布了 Llama 2 大模型。如果你和我们一样&#xff0c;你一定会迫不及待地想要亲自动手并用它来构建。 推荐&#xff1a;用 NSDT设计器 快速搭建可编程3D场景。 使用任何类型的 LLM 进行构建的第一步是将其托管在某处并通过 API 使用它。 然后你的开发人员可以轻松地将…

Vue3 第二节 Vue3的响应式

1.Vue3的响应式原理 2.ref函数和reactive函数的对比 3.setup注意点 一.Vue3的响应式原理 1.Vue2.x中的响应式原理 ① 实现原理 对象类型&#xff1a;通过Object.defineProperty() 对属性的读取&#xff0c;修改进行拦截&#xff08;数据劫持&#xff09;数组类型&#xf…

zookeeper集群和kafka的相关概念就部署

目录 一、Zookeeper概述 1、Zookeeper 定义 2、Zookeeper 工作机制 3、Zookeeper 特点 4、Zookeeper 数据结构 5、Zookeeper 应用场景 &#xff08;1&#xff09;统一命名服务 &#xff08;2&#xff09;统一配置管理 &#xff08;3&#xff09;统一集群管理 &#xff08;4&a…

Vue缓存字典值减少网络请求次数,解决同样参数并发请求多次

前言 在一些项目里&#xff0c;我们可能有着大量的下拉框&#xff0c;而这些下拉框的数据就来源于我们后端接口返回的字典信息。于是&#xff0c;画风可能是这样的&#xff0c;每次下拉&#xff0c;你都需要请求一次字典接口拿到这些数据&#xff0c;于是每次组件刷新都会重复…

C# PaddleDetection 版面分析

效果 项目 代码 using OpenCvSharp; using OpenCvSharp.Extensions; using Sdcb.PaddleDetection; using Sdcb.PaddleInference; using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Lin…

目前Java后端就业前景怎么样?

前言 并不乐观&#xff0c;看看现在的就业形式就知道了&#xff0c;基本上是僧多粥少的情况&#xff0c;你可能会看到很多编程语言排行榜或者流行榜中Java的排名很高&#xff0c;如同下面这种&#xff1a; 看排名确实可以粗略的得知语言当下的流行度、使用率&#xff0c;但是它…

springBoot的配置文件

目录 配置文件的格式 1. 配置项的分类和中文支持 2. properties 配置文件 读取配置文件 优缺点分析 3. yml 配置文件 读取配置文件 优缺点分析&#xff1a; 4. 多个配置文件 5. properties 和 yml 的对比 在 springBoot 中很多重要的数据是需要通过配置文件进行配置…

并发——什么是线程,什么是进程

文章目录 1.1. 何为进程?1.2. 何为线程? 1.1. 何为进程? 进程是程序的一次执行过程&#xff0c;是系统运行程序的基本单位&#xff0c;因此进程是动态的。系统运行一个程序即是一个进程从创建&#xff0c;运行到消亡的过程。 在 Java 中&#xff0c;当我们启动 main 函数时…

qt源码---事件系统之QCoreApplication

上一节分析了qt和windows系统之间的消息的传递&#xff0c;本节着重看一下&#xff0c;qt内部的事件是如何传递的&#xff1f; 1.sendEvent函数 在使用的自定义事件时&#xff0c;有时需要手动抛出一个事件&#xff0c;常用的方式有2种&#xff0c;其一时阻塞式的sendEvent函…

Kubernetes(K8s)从入门到精通系列之十:使用 kubeadm 创建一个高可用 etcd 集群

Kubernetes K8s从入门到精通系列之十&#xff1a;使用 kubeadm 创建一个高可用 etcd 集群 一、etcd高可用拓扑选项1.堆叠&#xff08;Stacked&#xff09;etcd 拓扑2.外部 etcd 拓扑 二、准备工作三、建立集群1.将 kubelet 配置为 etcd 的服务管理器。2.为 kubeadm 创建配置文件…

微服务间消息传递

微服务间消息传递 微服务是一种软件开发架构&#xff0c;它将一个大型应用程序拆分为一系列小型、独立的服务。每个服务都可以独立开发、部署和扩展&#xff0c;并通过轻量级的通信机制进行交互。 应用开发 common模块中包含服务提供者和服务消费者共享的内容provider模块是…

K8S系列文章 之 编写自动化部署K8S脚本

介绍 通过ansible脚本shell实现自动化部署k8s基础集群(v1.25.0) 部署结构 1. 通过二进制部署包镜像安装k8s集群、目录etcd节点只支持1-3个节点、最多三个etcd节点 2. 因k8s版本相对较新、需要升级内核来支持后台程序、当前版本只支持Cento7&#xff0c;内核版本(5.19.4-1.el7…

Object Map 的相互转换

学生业务对象定义&#xff1a;Student Student student new Student(); student.setId(1L); student.setName("令狐冲") student.setAge(10) 第一种&#xff1a;通过Alibaba Fastjson实现 pom.xml 文件依赖 <dependency><groupId>com.alibaba</g…

【EI/SCOPUS征稿】第三届电子通信与计算机科学技术国际学术会议(ECCST 2023)

第三届电子通信与计算机科学技术国际学术会议&#xff08;ECCST 2023&#xff09; 2023 3rd International Conference on Electronic Communication,Computer Science and Technology 2023年电子通信与计算机科学技术国际学术会议定于2023年9月15-17日在中国上海举行。会议旨…

培训报名小程序报名功能开发

目录 1 创建页面2 新建URL参数3 课程详细信息4 报名数据源创建5 报名信息功能开发6 设置页面跳转7 最终实现的效果总结 在培训报名小程序中&#xff0c;我们已经开发了首页和列表页。在列表页点击报名时就跳转到报名页面&#xff0c;先看我们的原型 报名页分为两个部分&#x…

ABAQUS启动GPU加速计算

文章目录 系统说明CUDA安装安装cuDNNABAQUS设置Lamb波压电仿真 系统说明 基于笔记本电脑&#xff0c;RTX4060&#xff0c;win11系统。 ABAQUS的有限元求解器是基于CPU的&#xff0c;但是它也支持使用GPU进行加速计算。仅支持隐式求解器standard。显示求解器explicit不能用。 …

Golang之路---04 并发编程——WaitGroup

WaitGroup 为了保证 main goroutine 在所有的 goroutine 都执行完毕后再退出&#xff0c;前面使用了 time.Sleep 这种简单的方式。 由于写的 demo 都是比较简单的&#xff0c; sleep 个 1 秒&#xff0c;我们主观上认为是够用的。 但在实际开发中&#xff0c;开发人员是无法…

【大数据】Flink 详解(二):核心篇 Ⅰ

Flink 详解&#xff08;二&#xff09;&#xff1a;核心篇 Ⅰ 14、Flink 的四大基石是什么&#xff1f; ​ Flink 的四大基石分别是&#xff1a; Checkpoint&#xff08;检查点&#xff09;State&#xff08;状态&#xff09;Time&#xff08;时间&#xff09;Window&#xff…

《面试1v1》ElasticSearch架构设计

&#x1f345; 作者简介&#xff1a;王哥&#xff0c;CSDN2022博客总榜Top100&#x1f3c6;、博客专家&#x1f4aa; &#x1f345; 技术交流&#xff1a;定期更新Java硬核干货&#xff0c;不定期送书活动 &#x1f345; 王哥多年工作总结&#xff1a;Java学习路线总结&#xf…

AWS多账户单点登录 IAM Identity Center(AWS SSO)

需求场景 多个aws账户&#xff0c;登陆麻烦且不安全&#xff0c;SSO单点功能并且外部身份提供者 — 如果您要管理外部身份提供者&#xff08;IdP&#xff09;&#xff08;例如 Okta 或 Active Directory&#xff09;中的用户。 官方文档&#xff1a;https://docs.aws.amazon.c…