Vue初始

news2024/11/27 16:43:09

一、Vue的概述

Vue 发音类似 view

Vue 游雨溪 鱿鱼须 鱿鱼须不懂Vue

Vue历史

Angular React Vue

2013 Seed

2013 Seed命名为Vue

2014 Vue正式发布 0.8 - 0.10

2015 6.13 0.12

2015下半年 vue-cli vueRouter vueX 版本好1.0 vue正式跨入大众 渐进式框架(JQuery)

2016国庆 2.0.0 Vue正式成为三大主流框架 2版本 借鉴了 React diff算法 虚拟dom

2019 vue 2.6.0 为3版本打下基础

2020 3.0正式问世

现在 vue 2.7版本 是2版本的最高版本 (很多很多老项目用的还是vue2.0得有人维护)

vue 3.0是当前的正式版本

Vue2全家桶 =》 Vue VueRouter VueX axios

Vue的官网:Vue.js (vuejs.org)

库与框架

库 Library 是一些封装好的东西 一般来说功能局限 库完全由开发者控制 更便向于单一工具

框架 Framework 是一套完整的功能集合 帮助开发者解决问题的一整套方案 操作在框架

Jquery 封装了js的一些操作

Vue => html css js 路由 状态机

Vue使用

 
  1. <!-- 从三方网站 引入网上的vue 需要网络 -->
  2. <!-- <script src="https://cdn.jsdelivr.net/npm/vue@2.7.14/dist/vue.js"></script> -->
  3. <!-- 本地引入 -->
  4. <script src="./js/vue.js"></script>
 
  1. <div id="app">
  2. {{title}}
  3. </div>
 
  1. let vm = new Vue({
  2. el: '#app',
  3. data: {
  4. title : "蜗牛"
  5. }
  6. });
 
  1. 推荐使用这种
  2. let vm = new Vue({
  3. data() {
  4. return {
  5. title: "蜗牛"
  6. }
  7. }
  8. });
  9. vm.$mount('#app');
 
  1. // 取消Vue提示你正在使用开发模式的Vue
  2. Vue.config.productionTip = false;

Vue devtools 点击扩展 获得扩展 搜索安装即可

但是这样开发效率不高 麻烦

我们一般采用脚手架来完成开发

Vue的脚手架使用

  1. 安装工具类的包 一般是全局安装

npm i -g @vue/cli 当前 vue2 => vue-cli 5.0.8

注意当前vue脚手架是webpack打包的

  1. 构建项目

    1. vue create 项目名称(不可以是中文)

       
          
      1. Vue CLI v5.0.8
      2. ? Please pick a preset: Default ([Vue 3] babel, eslint) 默认vue3 babel, eslint
      3. Default ([Vue 2] babel, eslint) 默认vue2 babel, eslint
      4. >Manually select features 自定义安装
       
          
      1. Vue CLI v5.0.8
      2. ? Please pick a preset: Manually select features? Check the features needed for your project: (Press <space> to select, <a> to toggle all, <i> to invert selection, and <enter> to proceed)
      3. (*) Babel> 转化器 选择插件
      4. ( ) TypeScript
      5. ( ) Progressive Web App (PWA) Support
      6. ( ) Router
      7. ( ) Vuex
      8. (*) CSS Pre-processors css预处理器 sacc less
      9. ( ) Linter / Formatter 语法校验 先不用 校验比较严格
      10. ( ) Unit Testing
      11. ( ) E2E Testing
       
          
      1. Vue CLI v5.0.8
      2. ? Please pick a preset: Manually select features? Check the features needed for your project: Babel, CSS Pre-processors
      3. ? Choose a version of Vue.js that you want to start the project with (Use arrow keys)
      4. > 3.x
      5. 2.x 选择2版本
       
          
      1. ? Pick a CSS pre-processor (PostCSS, Autoprefixer and CSS Modules are supported by default): (Use arrow keys)
      2. > Sass/SCSS (with dart-sass) 选择预处理器
      3. Less
      4. Stylus
       
          
      1. ? Where do you prefer placing config for Babel, ESLint, etc.? (Use arrow keys) 独立配置文件还是放在package.json中
      2. > In dedicated config files
      3. In package.json
    2. vue ui 不建议使用

Vue的文件结构

vue的运行

npm run serve 开发运行

注意 需要直到你当前是不是在vue项目中

 
  1. DONE Compiled successfully in 12612ms 22:03:34
  2. App running at:
  3. - Local: http://localhost:8080/ 这个地址是本地地址 自己访问
  4. - Network: http://192.168.31.53:8080/ 这个地址是局域地址 统一局域网可以访问
  5. Note that the development build is not optimized.
  6. To create a production build, run npm run build.

停止项目运行 Ctrl + c

注意 千万不要 open with live server

npm run bulid 打包上线

 
  1. DONE Compiled successfully in 13237ms 22:06:32
  2. File Size Gzipped
  3. dist\js\chunk-vendors.dad59269.js 86.25 KiB 30.63 KiB
  4. dist\js\app.37bcdf10.js 11.12 KiB 7.94 KiB
  5. dist\css\app.544ffb88.css 0.33 KiB 0.23 KiB
  6. Images and other types of assets omitted.
  7. Build at: 2023-05-09T14:06:32.391Z - Hash: 93f21783a64724c5 - Time: 13237ms
  8. DONE Build complete. The dist directory is ready to be deployed.
  9. INFO Check out deployment instructions at https://cli.vuejs.org/guide/deployment.html
  10. PS D:\凡云5期\02-codes\03-第三阶段-代码\0509\vue02>

打包完毕的不能直接运行 需要放在服务器上

二、Vue内部结构

Vue组件概述

  1. 非单页面组件 -> 没有独立文件的组件 暂时不讲(作为补充的时候在讲解)
  2. 单页面组件 -> xxx.vue

单页面组件 包括三部分 (html [<template></template>标签>] css [<style></style>])javascript [<script></script>]

 
  1. vue2规定 组件只能有一个 根标签
  2. Component template should contain exactly one root element.
  3. 标签都可以在vue中完美显示
  4. style scoped lang="scss"
  5. lang 是设计其语言的 less scss css stylus 看你css预处理器选择的是啥
  6. scoped是局部的意思 使用这个标识 在标签上会添加一个自定义属性 用来当做唯一标识 data-v-xxxxx
  7. 局部生效

组件样式

样式导入

 
  1. css 中
  2. @import url("css样式文件路径")
  3. 以上写法不管写不写scoped都是全局样式
  4. @import "css样式路径"
  5. 这种写法 加scoped就是局部样式,不写就是全局样式 一般不使用这种写法
  6. js
  7. import "css样式路径"
  8. 这种写法就是全局样式
  9. @ ==》 src这个文件夹

单页面组件的分类

 
  1. 1.布局组件 LayoutView.vue 主要负责 结构 样式
  2. 2.功能组件 CtrlView.vue 主要负责的 小部分的功能 查询 表格 模态框 分页 ...

单页面组件规则

 
  1. 1. 单页面组件的命名 需要使用大驼峰命名 且两个单词以上 如果没有思路起名 名字+View TableView.vue
  2. 2. 样式不是必须选项,js某种意义上说也是非必须得,但是没有不需要的时候,html必须存在

自定义组件过程

 
  1. 1. 创建组件
  2. 创建一个 xxxView.vue
  3. <template>
  4. <div>凡云</div>
  5. </template>
  6. <script>
  7. export default { // 将该组件导出
  8. name:"FanYunView"
  9. }
  10. </script>
  11. <style lang="scss" scoped>
  12. </style>
  13. 2. 哪里需要使用组件 哪里需要导入
  14. import 组件名称 form "@/xxxx/xxxx/xxxx[.vue]"
  15. 3. 需要在 export default中的 components 中注册组件
  16. export default {
  17. name: 'App',
  18. components: { // 注册组件
  19. HelloWorld,
  20. FanYunView
  21. }
  22. }
  23. 4. 调用组件
  24. 方法一 : 大驼峰方式调用
  25. 方法二 : 蛇形方式 全小写
  26. 注意 组件调用必须封闭 自封闭 或者 标签封闭都可以
  27. <fan-yun-view></fan-yun-view>
  28. <FanYunView></FanYunView>
  29. <fan-yun-view />
  30. <FanYunView />
 
  1. 组件数据定义
  2. data(){
  3. return {
  4. name : "张三",
  5. age : 18
  6. }
  7. }
  8. 模版语法
  9. 使用数据 {{}} Mustache 双大括号语法
  10. {{}}可以使用变量 常量 以及表达式(表达式一定会产生一个值)
  11. <div>{{ title }}</div>
  12. <div>{{ 10 > 5 ? 10 : 5 }}</div>
  13. <div>{{ "123" }}</div>
  14. <div>{{ "123".substring(1,2) }}</div>
  15. <div>{{ new Date() }}</div>

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

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

相关文章

[CTF/网络安全]攻防世界unserialize3解题详析及php序列化反序列化实例讲解

[CTF/网络安全]攻防世界unserialize3解题详析及php序列化反序列化实例讲解 _wakeup()及php序列化反序列化序列化字符串结构分析_wakeup()的利用 解题思路伪属性数量绕过 解题姿势总结 _wakeup()及php序列化反序列化 序列化是指将数据结构或对象转换为可传输或可存储的格式的过…

14.Kafka系列之K8S部署集群

1. 部署方式选择 基于Kafka3.X后的集群搭建方式主要分为两种&#xff0c;一种是基于Zookeeper管理方式&#xff0c;一种是基于KRaft模式&#xff0c;本文主要介绍Kafka-KRaft集群模式搭建 纠正文章1.Kafka系列之K8S部署单节点中基于Zookeeper方式的部署方式错误&#xff0c;其…

Godot引擎 4.0 文档 - 入门介绍 - Godot设计理念

本文为Google Translate英译中结果&#xff0c;DrGraph在此基础上加了一些校正。英文原版页面&#xff1a; Godots design philosophy — Godot Engine (stable) documentation in English Godot设计理念 既然你已经了解了&#xff0c;让我们来谈谈 Godot 的设计。 每个游戏…

(转载)MATLAB智能算法30个案例分析(1)——遗传算法工具箱

以下内容大部分来源于《MATLAB智能算法30个案例分析》&#xff0c;仅为学习交流所用。 1理论基础 1.1遗传算法概述 遗传算法(genetic algorithm,GA)是一种进化算法,其基本原理是仿效生物界中的“物竞天择、适者生存”的演化法则。遗传算法是把问题参数编码为染色体,再利用迭代…

第11届蓝桥杯Scratch选拔赛真题集锦

目录 一、编程题 第11届蓝桥杯Scratch选拔赛真题集锦 一、编程题 第 1 题 问答题 马克思的手稿 题目说明 背景信息: 马克思手稿中有一道趣味数学问题: 有30个人&#xff0c;其中有男人、女人和小孩。在一家饭馆吃饭共花了50先令;每个男人花了3先令&#xff0c;每个女人花了…

draw.io如何绘制带箭头的弧线

好长时间没有写draw.io相关的技巧了。今天再补充一个小技巧。 如何绘制像下图中蓝色的带箭头的弧线&#xff1f; 本来以为这个问题应该很简单&#xff0c;但是在仔细研究了很久之后我发现这个问题并没有想像得那么容易。 众所周知&#xff0c;draw.io中带箭头的线叫作“connect…

软件工程 | 期末复习习题

一、软件工程概述 1、选择 软件有无可行性和不可控性 软件工程是一门工程性学科 软件生存周期常见模型&#xff1a;螺旋模型、增量模型、瀑布模型、原型模型、融合模型、快速应用开发模型、敏捷模型 软件生存周期中时间最长的阶段是维护阶段 瀑布模型是一种软件生存周期模…

微搭低代码实现aad的sso

微搭低代码平台是一种可帮助您快速构建和部署应用程序的工具&#xff0c;而无需手动编写大量代码。要在微搭低代码平台上实现Azure Active Directory&#xff08;AAD&#xff09;的单点登录&#xff08;SSO&#xff09;&#xff0c;您需要遵循以下步骤&#xff1a; 注册Azure …

SpringBoot整合Mybatis(3000字)

SpringBoot整合Mybatis 文章目录 SpringBoot整合Mybatis依赖导入配置信息(application.yml)代码分层数据库(建库建表语句)各层代码enity:dao:service:controller: 测试 Mybatis分页查询和模糊查询分页查询:测试: 模糊查询:测试: Mybatis的分布查询多对一:测试:一对多: Mybatis的…

邮箱营销不再难:如何提高邮件的到达率和打开率?

在数字时代&#xff0c;电子邮件是企业与客户以及潜在客户沟通的重要渠道&#xff0c;是企业培养客户的有效方式之一。然而&#xff0c;由于每个人每天也要收到大量的垃圾邮件&#xff0c;所以企业必须确保在正确的时间将邮件传递给正确的人。在这篇文章中&#xff0c;小编将探…

BEVDet 论文学习

1. 解决了什么问题&#xff1f; 自动驾驶系统感知周围的环境再进行决策&#xff0c;极具挑战。基于视觉的自动驾驶系统对准确性和效率的要求很严格&#xff0c;人们会采用不同的范式来解决 3D 检测和分割任务。对于多相机 3D 目标检测&#xff0c;image-view-based 方法如 FCO…

缓存更新策略

缓存更新策略 内存淘汰超时剔除主动更新说明利用Redis的内存淘汰机制&#xff0c;不用自己维护&#xff0c;当内存不足时会自动淘汰部分数据。下次查询时更新缓存。给缓存数据添加TTL(过期时间)&#xff0c;到期后自动删除缓存。下次查询时更新缓存。编写业务逻辑&#xff0c;…

CSAPP Lab4- PerfLab

代码优化 typedef struct { unsigned short red; /* R value */ unsigned short green; /* G value */ unsigned short blue; /* B value */ } pixel图像用一维数组表示&#xff0c;第&#xff08;i,j&#xff09;个像素表示为I[RIDX(i,j,n)]&#xff0c;n为图像的维数 #def…

Datacom-HCIE 02(10月26日更新)--含解析

单选题 1.[试题编号&#xff1a;189785] &#xff08;单选题&#xff09;如图所示&#xff0c;VTEP1上在BD20域内开启了ARP广播抑制功能&#xff0c;并且VTEP1通过 BGP EVPN路由学习到了PC2的ARP信息&#xff0c;则PC1发送的针对PC2的ARP请求&#xff0c;VIEP1在转发给VIEP2时…

sqli-labs Less-11,12

less-11(基于错误的POST型单引号字符型注入) sqlmap 1.使用bp抓包 2.保存为1.txt在本地&#xff0c;使用sqlmap查询数据库 sqlmap.py -r "C:\Users\wy199\Desktop\1.txt" --dbs 3.查询当前数据库的所有表 sqlmap.py -r "C:\Users\wy199\Desktop\1.txt"…

正点原子ALPHA开发板核心资源分析

目录 正点原子ALPHA开发板核心资源分析I.MX6ULL实物图对比SOC 主控芯片&#xff08;MCIMX6Y2CVM08AB&#xff09;NAND FLASHEMMCDDR3L 正点原子ALPHA开发板核心资源分析 I.MX6ULL实物图对比 I.MX6ULL NAND BTB 接口核心板资源图与 I.MX6ULL EMMC BTB 接口核心板资源图如上图&a…

安装ElasticSearch之前的准备工作jdk的安装

一.windows 下载jdk的软件 (1).进入jdk1.8官网 (2).根据电脑是32位还是64位按需下载 (3).点击下载之后就会跳转到Oracle账号登录界面 没有 Oracle账号的注册一下就可以了 下载好的jdk如下: 双击下一步下一步安装jdk 默认安装就可以了 配置环境变量 (1).电脑左下方设置选项 (2).…

UFT软件的安装与注意事项

安装包下载 UFT软件的安装包网上也有许多&#xff0c;这里我分享下我使用的--->UFT安装包 下载完成解压后进行安装。 要注意关闭杀毒软件&#xff0c;否则安装过程中某些组件可能会安装不上。 部分电脑在安装过程中出现以下提示&#xff0c;可以点击确定 然后我们查看桌面上…

学习open62541 --- [77] 修改String类型变量的注意点

对于String类型的节点&#xff0c;其值的类型是UA_String&#xff0c;在这篇文章中我们解释了UA_String的生成方法。 当我们修改String类型节点的值时&#xff0c;会事先准备一个UA_String变量&#xff0c;这时就会遇到一个选择&#xff1a;是否需要动态分配内存&#xff0c;即…

一种基于数值的横向相互作用

( A, B )---144*30*2---( 1, 0 )( 0, 1 ) 让网络的输入有144个节点&#xff0c;训练集AB各由12张二值化的图片组成&#xff0c;让A中每行有1个1&#xff0c;B中全是0&#xff0c;排列组合A &#xff0c;统计迭代次数的顺序。 前面实验已经表明对于A中每行只有1个1&#xff0c;…