Vue脚手架

Vue Cli脚手架使用

一、通过一个脚手架创建一个新项目

​ 可以使用VScode的终端操作,但必须给一个管理员权限

1、创建(两种方法)

  • vue create 项目名
  • vue ui(UI是user interface–图形化界面的创建方式,在图形化界面中创建)

1.1 一般可以创建vue2即可

1.2 创建好后可以在package.json文件下,看到

在这里插入图片描述

有三个命令,一般在开发中常用的是第一个**serve——它可以帮我们打开一个本地的静态资源服务器,将项目直接跑起来,方便我们在开发中去使用**

2、使用serve将项目跑起来

注意:要执行这个命令,必须要在当前项目的目录下操作,如不是,可以通过以下操作跳转

在这里插入图片描述

  • 接下来即可使用npm run serve运行此项目了

在这里插入图片描述

  • 运行成功,点击网址即可显示出当前框架页面

在这里插入图片描述

3、使用build将项目打包

​ 代码在实际操作时,在开发中会有好多的文件,但在最终呈现给用户的时候,不能是多个零碎的文件,所以需要再vue中进行一个打包处理——build(前提也是终端在当前项目的目录下)

  • 接下来即可使用npm run build来执行

在这里插入图片描述

  • 执行成功,这样在文件的目录下及会出现一个dist文件,里面便是打包好的项目文件

此时打包好后的项目的.html文件:

在这里插入图片描述

中的js和css文件的路径都是以/开头的,此时运行需要以一种服务器的方式,进行代码访问,此时需要安转npm工具

使用npm i serve -g

  • serve——可以帮助我们去快速启动一个静态资源服务器来执行,该目录下的一个代码运行
  • i——安装的简写、-g——进行一个全局安装

4、尝试运行带包好后的dist项目

​ 也是在该项目下

  • 运行代码serve dist

在这里插入图片描述

  • 执行成功,可以点击网址,进入并预览

在这里插入图片描述

和打包前运行的效果一样

二、目录的解释

在这里插入图片描述

1、node_modules目录

​ 是当前项目安装的所有包(不需要进行改动),里面是一些第三方工具,安装好直接用就ok

2、public目录

​ 里面保存的是一些不参与编译的资源

3、src目录

​ 保存的是一些需要编译的资源

  • assets目录

​ 保存的是图片,这个图片在项目中会被编译为base64格式进行展示

  • components目录

​ 保存的是所有的自定义组件功能

  • App.vue文件

​ 根组件

  • main.js文件

​ 这是Vue应用的一个入口文件,会对Vue文件做一个基础的配置

  • 其余的很多都是配置文件

​ 其中的vue.config.jsvue-cli的项目的配置文件,里面会有一些相关配置的定义,如果你想要做一些配置更改的话,就可以在这个地方做一个相应的处理

三、Vue组件化开发的方式

1、组件的作用与本质

  • 作用:组件是用来区封装页面部分功能的一种方式(组件是Vue的基本构建块),它允许开发者将界面分解为独立的、可复用的部分,每个部分都包含自己的逻辑和样式。
  • 本质:从本质上讲,Vue 组件是 JavaScript 对象,包含模板、数据、计算属性、方法和生命周期钩子。它们通过 Vue 实例管理,结合 Vue 的响应式系统,使得组件在数据变化时能够自动更新视图。

2、组件的处理与使用

在Vue中使用一个以.vue为后缀的文件,这种文件成为单文件组件(一个组件可以封装这一块功能的结构、样式和逻辑这么几个部分),所以没有.vue文件都包含了三个部分

在这里插入图片描述

template、script和style

  • 例如,我们可以在style中修改css样式

在这里插入图片描述

此时,我们再次运行后发现页面改变(我们将内部的HelloWorld组件做了修改)

在这里插入图片描述

vue组件在使用时相当于一个html标签(自定义标签),但实质上是一个单独的Vue实例

示例

在这里插入图片描述

App.vue中,先在script中导入HelloWorld组件,并将该组件定义为根组件App.vue的一个子组件(根组件没有父组件)

import HelloWorld from './components/HelloWorld.vue';export default {name: 'App',components: {HelloWorld}
}

导入组件import HelloWorld from './components/HelloWorld.vue'; 导入了一个名为 HelloWorld 的组件。

导出组件配置export default { ... } 语句将一个对象作为默认导出,这个对象包含了:

  • name: 定义组件的名称为 'App'
  • components: 这个对象中列出了当前组件使用的子组件。在这里,将 HelloWorld 组件注册为 App 组件的一个子组件。

四、组件通信

​ 组件内部是独立的,但组件与组件之间也是有关联性的(数据的交互)

1、父传子

​ 父组件中的一些数据,希望在子组件中进行访问的话,使用props进行接收

示例

  • 父组件中,给子组件添加一个msg属性

在这里插入图片描述

  • 子组件要接收,使用props
    在这里插入图片描述

2、子传父

​ 将子组件中的数据传递响应给父组件,使用$emit()用于触发自定义事件进行接收

  • 自定义事件设定:this.$emit('自定义事件名', 该事件要传输的数据)
  • 父组件的监听:@上面的自定义事件名 = "相应的处理程序名(函数,但这里不用加括号)"

示例

子组件中:

在这里插入图片描述

父组件中:

在这里插入图片描述

定义了一个点击累加事件

在这里插入图片描述

五、组件插槽

​ 将自定义标签变成双标签,并在内部(插槽)可以加入一些内容

  • 在父组件中将自定义标签内写入内容(文字,HTML等)

  • 在子组件的template中使用双标签slot(内部为当父组件在使用子组件时的一个默认插槽内容,也就是如果自定义标签不写内容的话,会在子组件中的插槽展示slot定义的默认内容

  • 具名插槽:如果在子组件中想多加一些插槽,定义多个slot若要单个操作单个插槽,则需给slot定义name(类似于id)<slot name='sl'></slot>,则在父组件中定义,需要<template v-slot:sl> </template>或者简写<template #sl> </template>

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

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

相关文章

[含文档+PPT+源码等]精品基于PHP实现的培训机构信息管理系统的设计与实现

基于PHP实现的培训机构信息管理系统的设计与实现背景&#xff0c;可以从以下几个方面进行阐述&#xff1a; 一、社会发展与教育需求 随着经济的不断发展和人口数量的增加&#xff0c;教育培训行业迎来了前所未有的发展机遇。家长对子女教育的重视程度日益提高&#xff0c;课外…

智能防泄密:源代码保护的创新选择

在数字化时代&#xff0c;数据安全和源代码保护已成为企业关注的焦点。源代码不仅是企业的核心资产&#xff0c;更是企业创新能力和技术实力的体现。一旦源代码泄露&#xff0c;企业可能面临严重的商业损失和法律风险。因此&#xff0c;如何有效地保护源代码&#xff0c;防止泄…

卡方检验方法概述与类型——四格表和R*C表卡方检验案例

卡方检验是以卡方分布为基础&#xff0c;针对定类数据资料的常用假设检验方法。其理论思想是判断实际观测到的频数与有关总体的理论频数是否一致。 卡方统计量是实际频数与理论频数吻合程度的指标。卡方值越小&#xff0c;表明实际观察频数与理论频数越接近&#xff0c;反之卡…

H7-TOOL的LUA小程序教程第16期:脉冲测量,4路PWM,多路GPIO和波形打印(2024-10-25, 更新完毕)

LUA脚本的好处是用户可以根据自己注册的一批API&#xff08;当前TOOL已经提供了几百个函数供大家使用&#xff09;&#xff0c;实现各种小程序&#xff0c;不再限制Flash里面已经下载的程序&#xff0c;就跟手机安装APP差不多&#xff0c;所以在H7-TOOL里面被广泛使用&#xff…

JS轮播图实现自动轮播、悬浮停止轮播、点击切换,下方指示器与图片联动效果

代码&#xff1a; <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title><s…

【学术会议论文投稿】大数据治理:解锁数据价值,引领未来创新

第六届国际科技创新学术交流大会&#xff08;IAECST 2024&#xff09;_艾思科蓝_学术一站式服务平台 更多学术会议请看&#xff1a;https://ais.cn/u/nuyAF3 目录 引言 一、大数据治理的定义 二、大数据治理的重要性 三、大数据治理的核心组件 四、大数据治理的实践案例…

w外链如何跳转微信小程序

要创建外链跳转微信小程序&#xff0c;主要有以下几种方法&#xff1a; 使用第三方工具生成跳转链接&#xff1a; 注册并登录第三方外链平台&#xff1a;例如 “W外链” 等工具。前往该平台的官方网站&#xff0c;使用手机号、邮箱等方式进行注册并登录账号。选择创建小程序外…

记一次靶场的文件上传

刚开始一个上传的页面&#xff0c;尝试了txt,png,ppt,php,这些常见的后缀文件发现都能上传成功&#xff0c;并且页面一点回显都没有&#xff0c;自己都不知道是被过滤了什么类型的文件&#xff0c; 后面不经意间打开了自己的证件照&#xff0c;是jpg格式的&#xff0c;于是尝试…

EPLAN中绘制PLC盒子时如何切换不同品牌PLC的IO地址?

EPLAN中绘制PLC盒子时如何切换不同品牌PLC的IO地址? 如下图所示,我这里需要绘制一个三菱的PLC盒子,但是我在插入PLC数字输入点时,该点位的地址却显示是西门子PLC的地址I0.0,那么如何将其修改为三菱PLC的地址呢? 如下图所示,找到选项-----设置, 如下图所示,找到项目---…

【银河麒麟高级服务器操作系统·实例分享】裸金属服务器开机失败分析及处理建议

了解更多银河麒麟操作系统全新产品&#xff0c;请点击访问 麒麟软件产品专区&#xff1a;https://product.kylinos.cn 开发者专区&#xff1a;https://developer.kylinos.cn 文档中心&#xff1a;https://documentkylinos.cn 现象描述 裸金属物理服务器开机卡在EFI stub页面…

2024年【焊工(中级)】最新解析及焊工(中级)考试总结

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 焊工&#xff08;中级&#xff09;最新解析参考答案及焊工&#xff08;中级&#xff09;考试试题解析是安全生产模拟考试一点通题库老师及焊工&#xff08;中级&#xff09;操作证已考过的学员汇总&#xff0c;相对有…

汽车IVI中控OS Linux driver开发实操(二十六):i.MX图形库

概述: 下表列出了整个GPU系列,在i.MX 6板上,只有6Quad和6QuadPlus支持OpenCL。表中还显示了OpenCL的关键性能指标GFLOPS的理论数量。一些基准测试,如Clpeak,可用于验证它。 i.MX G2D API G2D应用程序编程接口(API)设计为易于理解和使用2DBit blit(BLT)功能。它允许用…

【算法】Kruskal最小生成树算法

目录 一、最小生成树 二、Kruskal算法求最小生成树 三、代码 一、最小生成树 什么是最小生成树&#xff1f; 对于一个n个节点的带权图&#xff0c;从中选出n-1条边&#xff08;保持每个节点的联通&#xff09;构成一棵树&#xff08;不能带环&#xff09;&#xff0c;使得…

apisix的原理及作用,跟spring cloud gateway有什么区别?

apache APISIX 是一个高性能、可扩展的开源 API 网关&#xff0c;它主要用于处理 API 请求、流量管理、安全控制和服务治理。APISIX 可以将复杂的服务架构中的不同服务通过统一的网关来进行管理和监控&#xff0c;为微服务架构提供了便捷的流量入口管理方式。 APISIX 的原理 …

大模型系列——AlphaZero/强化学习/MCTS

AlphaGo Zero无需任何人类历史棋谱&#xff0c;仅使用深度强化学习&#xff0c;从零开始训练三天的成就已远远超过了人类数千年积累的围棋知识。 1、围棋知识 &#xff08;1&#xff09;如何简单理解围棋知识 &#xff08;2&#xff09;数子法分胜负&#xff1a;https://zhu…

2024年【金属非金属矿山(地下矿山)安全管理人员】考试报名及金属非金属矿山(地下矿山)安全管理人员复审考试

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 金属非金属矿山&#xff08;地下矿山&#xff09;安全管理人员考试报名是安全生产模拟考试一点通生成的&#xff0c;金属非金属矿山&#xff08;地下矿山&#xff09;安全管理人员证模拟考试题库是根据金属非金属矿山…

uniapp开发【选择地址-省市区功能】,直接套用即可

一、效果展示 二、代码 <template><view><view class="user_info"><view class="item"

【动手学强化学习】part2-动态规划算法

阐述、总结【动手学强化学习】章节内容的学习情况&#xff0c;复现并理解代码。 文章目录 一、什么是动态规划&#xff1f;1.1概念1.2适用条件 二、算法示例2.1问题建模2.2策略迭代&#xff08;policyiteration&#xff09;算法2.2.1伪代码2.2.2完整代码2.2.3运行结果2.2.4代码…

Elastic Stack - FileBeat 入门浅体验

Filebeat 是 Elastic Stack 中的一个轻量级日志转发器&#xff0c;主要用于收集和转发日志数据。Filebeat 作为代理安装在您的服务器上&#xff0c;可以监控您指定的日志文件或位置&#xff0c;收集日志事件&#xff0c;并将其转发到 Elasticsearch 或 Logstash 进行索引。 一…

Xcode文件默认存储位置-使用c++file保存文件默认路径以及设置为路径为当前项目路径

Xcode文件默认存储位置-使用cfile保存文件默认路径以及设置为路径为当前项目路径 1.概述 使用Xcode工具开发时候&#xff0c;遇到C调用file创建文件后&#xff0c;在当前项目中找不到文件路径。这是由于xcode会将文件保存到默认设置的路径。下面是查看文件默认存储路径和修改…