学习记录:2023.4.28

news2024/11/24 21:08:54

2023.4.28 实习学习记录

  • Vue
      • 1、SVG学习:
      • 2、watch监听:
      • 3、< g>标签:

Vue

1、SVG学习:

  • 百度百科:SVG是可缩放矢量图形,是基于可扩展标记语言(标准通用标记语言的子集),用于描述二维矢量图形的一种图形格式。它由万维网联盟制定,是一个开放标准。应该是一种开放标准的矢量图形语言,可让你设计激动人心的、高分辨率的Web图形页面。用户可以直接用代码来描绘图像,可以用任何文字处理工具打开SVG图像,通过改变部分代码来使图像具有交互功能,并可以随时插入到HTML中通过浏览器来观看。
  • 可以直接在HTML中使用
<body>
    <svg version="1.1" xmlns="http://www.w3.org/2000/svg" class="cricle_my">
        <!-- cx、cy:图形中心所在位置;r:圆的半径;stroke:图形线的颜色;
            stroke-width:图形线的宽度;fill:封闭图形的填充色 -->
        <circle cx="250" cy="250" r="50" stroke="black" stroke-width="2" fill="red" />
    </svg>
</body>
<style>
    .cricle_my {
        height: 500px;
        width: 500px;
    }
</style>

在这里插入图片描述

xmlns是命名空间,不了解XML的可能不知道是什么意思,无所谓,这个参数是固定的,照着写就行了。

  • 可以单独建立SVG文件,HTML使用标签引入
    • 建立SVG文件:
      在这里插入图片描述
    • 在HTML通过标签引入
      在这里插入图片描述
    • 运行结果:
      在这里插入图片描述
  • 基础形状标签:
    • 矩形 :<rect width="300" height="100" fill=rgb(0,0,255) stroke-width=1 stroke=rgb(0,0,0)/>
      • 样式的设置也非常简单,和CSS的行内样式表一样,属性名也都基本和在HTML中使用CSS时相同,目前所用到的唯一不同的是矩形圆角用rx和ry这两个属性进行设置。
    • 圆形:<circle cx="100" cy="50" r="40" stroke="black" stroke-width="2" fill="red" />
      • cx和cy定义圆心的位置,不设置的话就是(0,0),r是半径。
    • 椭圆:<ellipse cx="240" cy="50" rx="220" ry="30" style="fill:yellow"/>
      • 椭圆跟圆的区别是椭圆有长轴和短轴,所以有两个属性rx和ry分别表示水平轴和垂直轴的长度
    • 直线:<line x1="0" y1="0" x2="200" y2="200"/>
      • 直线很简单,用两组(x,y)坐标分别设置起点和终点即可。
    • 折线:<polyline points="0,40 40,40 40,80 80,80 80,120 120,120 120,160"/>
      • 折线其实也不复杂,就比直线多定义几个点而已,注意每组点之间用空格隔开而不是分号。
    • 多边形:<polygon points="100,10 40,198 190,78 10,78 160,198" style="fill:lime;stroke:purple;stroke-width:5;fill-rule:nonzero;" />
      在这里插入图片描述
      • 多边形稍微复杂一点点,它跟折线很像,也是定义一些点,只不过最后一个点会和第一个点连起来,形成一个封闭图形。
      • 关键在于fill-rule属性,该属性用来如何判断画布上的某区域是否属于该图形“内部”(内部区域将被填充),当然,对三角形或矩形这种路径没有交叉的简单图形,不需要使用该属性,下面的例子是一个五角星。
        • fill-rule默认是nonzero,它的规则就是要判断一个点是否在图形内,从该点作任意方向的一条射线,然后检测射线与图形路径的交点情况。从0开始计数,路径从左向右穿过射线则计数加1,从右向左穿过射线则计数减1。得出计数结果后,如果结果是0,则认为点在图形外部,否则认为在内部。
        • fill-rule的另一个值是evenodd,也是做射线,但是做完之后数和图形路径的交点个数,奇数就认为是在内部,偶数就认为在外部。所以将上面代码中的fill-rule改成evenodd后就变成了下面的效果。
        • <polygon points="100,10 40,198 190,78 10,78 160,198" style="fill:lime;stroke:purple;stroke-width:5;fill-rule:evenodd;" />
          在这里插入图片描述
    • 路径:路径和折线的区别在于折线是用直线把点连起来,而路径可以通过参数绘制出光滑的曲线。路径可以实现折线的效果,但折线却并不能替代路径。
      <path d="M 0 350 q 150 -300 300 0" stroke="blue" stroke-width="5" fill="none" />
      在这里插入图片描述
      • 参数如下:可以用小写字母,但是含义不一样,大写表示绝对绝对定位,而小写表示相对定位。
        • M = moveto 起始
        • L = lineto 连线
        • H = horizontal lineto 水平线
        • V = vertical lineto 垂直线
        • C = curveto 曲线,三次贝塞尔曲线
        • S = smooth curveto 也是曲线,三次贝塞尔曲线
        • Q = quadratic Bézier curve 二次贝塞尔曲线
        • T = smooth quadratic Bézier curveto 二次贝塞尔曲线
        • A = elliptical Arc 椭圆弧
        • Z = closepath 闭合(从最后一个点连直线到起始点)
  • 文本标签:基本用法很简单,和HTML一样在开始和结束标签中间写文本就行。
    • 子文本
<text x="10" y="20" style="fill:rgb(0, 174, 255);">兄弟:
    <tspan x="10" y="45">菜鸡程序员</tspan>
    <tspan x="10" y="70">正在努力中</tspan>
</text>

在这里插入图片描述
每个 和和 一样,单独占一行,而且可以有自己的样式。但是必须包在 标签内,不能单独用。

  • 旋转文字
<text x="10" y="20" style="fill:rgb(0, 174, 255);">兄弟:
    <tspan x="10" y="45">菜鸡程序员</tspan>
    <tspan x="10" y="70">正在努力中</tspan>
</text>
<text x="10" y="45" transform="rotate(90 20,40)" style="fill: red;">正在努力中</text>

在这里插入图片描述

rotate中的三个参数分别是顺时针旋转的度数、垂直、水平平移的距离(正值表示向上、向右)

  • 文字沿路径
    定义一条路径,然后通过textPath标签进行设置即可
<defs>
    <path id="path1" d="M 0 100 q 100 80 200 0" stroke="blue" stroke-width="5" fill="none" />
</defs>
<text x="10" y="100" style="fill:red;">
    <textPath xlink:href="#path1">祝你天天开心,都有好心情</textPath>
</text>

在这里插入图片描述

2、watch监听:

  • 几种方法:
    • 通过 watch 监听 data 数据的变化
watch: {
    data(val, value) {
        
    }
}
  • 通过 watch 监听 list 数据的变化(使用深度监听)
data() {
    return {
        list: {
            'id': 1,
            'type': 0
        },
        number: 0
    }
},
watch: {
    list: {
        handler(newVal) {
            this.number++
        },
        deep: true
    }
}
  • 通过 watch 监听 data 数据的变化
watch: {
    data: 'change' // 值可以为methods的方法名
},
methods: {
    change(curVal,oldVal){
   
  }
}
  • watch中的immediate、handler和deep属性:
    • immediate 和 handler:
      • 使用watch时有一个特点,就是当值第一次绑定时,不会执行监听函数,只有值发生改变时才会执行。如果我们需要在最初绑定值的时候也执行函数,则就需要用到immediate属性。
    • deep
      • 当需要监听一个对象的改变时,普通的watch方法无法监听到对象内部属性的改变,此时就需要deep属性对对象进行深度监听。
      • 设置deep:true则可以监听到 list.id 的变化,此时会给 list 的所有属性都加上这个监听器,当对象属性较多时,每个属性值的变化都会执行 handler。如果只需要监听对象中的一个属性值,则可以做以下优化:使用字符串的形式监听对象属性
data() {
    return {
        list: {
            'id': 1,
            'type': 0
        }
    }
},
watch: {
    'list.id': {  //只会给对象的某个特定的属性加监听器
        handler(newVal, oldVal) {
             ......
        },
    deep: true
    }    
}

3、< g>标签:

  • 容器标签
  • 分组标签
    详解

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

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

相关文章

二、C++、STL标准模板库和泛型编程 ——适配器、补充(侯捷)

侯捷 C八部曲笔记汇总 - - - 持续更新 ! ! ! 一、C 面向对象高级开发 1、C面向对象高级编程(上) 2、C面向对象高级编程(下) 二、STL 标准库和泛型编程 1、分配器、序列式容器 2、关联式容器 3、迭代器、 算法、仿函数 4、适配器、补充 三、C 设计模式 四、C 新标准 五、C 内存管…

时序预测 | MATLAB实现BO-CNN-LSTM贝叶斯优化卷积神经网络-长短期记忆网络时间序列预测

时序预测 | MATLAB实现BO-CNN-LSTM贝叶斯优化卷积神经网络-长短期记忆网络时间序列预测 目录 时序预测 | MATLAB实现BO-CNN-LSTM贝叶斯优化卷积神经网络-长短期记忆网络时间序列预测效果一览基本介绍模型搭建程序设计参考资料 效果一览 基本介绍 MATLAB实现BO-CNN-LSTM贝叶斯优…

c++标准模板(STL)(std::array)(四)

定义于头文件 <array> template< class T, std::size_t N > struct array;(C11 起) std::array 是封装固定大小数组的容器。 此容器是一个聚合类型&#xff0c;其语义等同于保有一个 C 风格数组 T[N] 作为其唯一非静态数据成员的结构体。不同于 C 风格数…

MySQL 高可用实战

文章目录 前言实现思路环境准备一、实现MySQL高可用1.1 修改配置文件1.2 MySQL监控脚本1.4 重启keepalived1.5 查看虚拟ip 二、高可用验证2.1 模拟宕机2.2 查看虚拟ip2.3 连接MySQL2.4 恢复主机2.5 查看虚拟ip 总结 前言 请各大网友尊重本人原创知识分享&#xff0c;谨记本人博…

基于脉搏波的疾病诊断:准确率接近100%的未来前景?

脉搏波分析作为一种无创诊断方法&#xff0c;在糖尿病诊断领域具有巨大潜力。某些研究表明&#xff0c;基于脉搏波的诊断方法在准确性方面可能优于传统血糖检测方法。然而&#xff0c;在将这种方法应用于临床之前&#xff0c;我们需要关注其稳定性、易用性、成本效益等因素。 首…

老胡的周刊(第089期)

老胡的信息周刊[1]&#xff0c;记录这周我看到的有价值的信息&#xff0c;主要针对计算机领域&#xff0c;内容主题极大程度被我个人喜好主导。这个项目核心目的在于记录让自己有印象的信息做一个留存以及共享。 &#x1f3af; 项目 MOSS[2] 来自复旦大学的开源工具增强型会话语…

翻译: 迁移学习和微调 Transfer learning fine-tuning

1. 介绍 迁移学习包括获取在一个问题上学到的特征&#xff0c;并将它们用于一个新的类似问题。例如&#xff0c;已经学会识别浣熊的模型的特征可能有助于启动旨在识别狸猫的模型。 迁移学习通常用于您的数据集数据太少而无法从头开始训练全尺寸模型的任务。 在深度学习的背景…

AI模型推理(1)——入门篇

前言 本文主要介绍AI模型推理的相关基础概念&#xff0c;为后续云原生模型推理服务的学习做准备。 初识模型部署 对于深度学习模型来说&#xff0c;模型部署指让训练好的模型在特定环境中运行的过程。相比于常规的软件部署&#xff0c;模型部署会面临更多的难题&#xff1a; …

SPI机制详细讲解

文章目录 SPI机制案例分析建立DriverManager建立MysqlDriver来实现扩展建立OracleDriver来实现扩展测试spitest 源码分析ServiceLoader类的结构reload加载类LazyIterator类parse解析URL对象方法parseLine方法 SPI机制 SPI &#xff0c;全称为 Service Provider Interface&…

Bridge模式如何配置

Bridge模式案例&#xff08;一&#xff09; 基于Docker引擎启动Nginx WEB容器&#xff0c;默认以Bridge方式启动Docker容器&#xff0c;会动态DHCP给Docker容器分配IP、网关等信息&#xff0c;操作指令如下&#xff1a; 查看镜像列表 docker images#运行新的Nginx容器 dock…

ChatGPT实现代码解释

代码解释 新手程序员在入门之初&#xff0c;最好的学习路径就是直接阅读其他人的代码&#xff0c;从中学会别人是怎么写的&#xff0c;为什么这么写。过去&#xff0c;这个学习过程可能需要广泛阅读官方文档&#xff0c;在 GitHub issue 上提问&#xff0c;上 Stack Overflow …

内网渗透(六十)之AS-REP Roasting攻击

AS-REP Roasting攻击 AS-REP Roasting是一种针对用户账户进行离线爆破的攻击方式。但是该攻击方式使用上比较受限,因为其需要用户账户设置“不要求Kerberos预身份验证”选项。而该选项默认是没有勾选的。Kerberos域身份验证发生在Kerberos身份验证的第一阶段(AS_REQ&AS_…

手记系列之四 ----- 关于使用MySql的一些经验

前言 本篇文章主要介绍的关于本人在使用MySql记录笔记的一些使用方法和经验&#xff0c;温馨提示&#xff0c;本文有点长&#xff0c;约1.5w字&#xff0c;几十张图片&#xff0c;建议收藏查看。 一、MySql安装 下载地址:https://dev.mysql.com/downloads/ 在安装MySql之前&a…

我在VScode学Java(Java一维数组)

我的个人博客主页&#xff1a;如果\真能转义1️⃣说1️⃣的博客主页 关于Java基本语法学习---->可以参考我的这篇博客&#xff1a;(我在Vscode学Java) 我在VScode学Java(Java一维数组&#xff09; Java 一维数组 声明数组&#xff1a;先声明&#xff0c;后使用 动态分配内…

最长连续子序列---双指针

一、最长连续不重复子序列 核心思路&#xff1a; 遍历数组a中的每一个元素a[i], 对于每一个i&#xff0c;找到j使得双指针[j, i]维护的是以a[i]结尾的最长连续不重复子序列&#xff0c;长度为i - j 1, 将这一长度与r的较大者更新给r。 对于每一个i&#xff0c;如何确定…

XR技术在手术中的应用调研

虚拟现实、增强现实、混合现实等概念和技术是最近几年发展起来的&#xff0c;相信你对去年大火的元宇宙深有感触&#xff0c;元宇宙属于虚拟现实的技术范畴&#xff0c;头号玩家电影也让虚拟现实走进大众的视野中。早在2015年&#xff0c;笔者参加一次展会时就有接触&#xff0…

【数据库复习】第四章数据库恢复技术

一、事务 定义 一个数据库操作序列 一个不可分割的工作单位&#xff08;要么全做&#xff0c;要么不做&#xff09; 恢复和并发控制的基本单位 事务和程序比较 在关系数据库中&#xff0c;一个事务可以是一条或多条SQL语句,也可以包含一个或多个程序。 一个程序通常包含…

java倒序输出数字的方法

1.在输入框中输入一个整数&#xff0c;比如要输入“5”&#xff0c;需要输出倒序&#xff0c;可以使用数字键盘进行输入&#xff0c;也可以使用文本编辑器进行输入。 2.在命令行中输入“6”&#xff0c;如图所示。 3.选择一个字符串作为例子。使用字符串编辑器中的 reverse命令…

这个 Chrome 插件,让你的 ChatGPT 不再报错

ChatGPT的官网最近几天报错越来越频繁了&#xff0c;相信大家都发现了。 一旦你离开页面时间比较久&#xff0c;再度返回跟它进行对话&#xff0c;就会出现如下报错&#xff1a; 虽然这个报错信息以前也出现过&#xff0c;但现在的频率确实过高&#xff0c;对于每天需要使用 C…

“火灾不分昼夜,安全在我心中”——五一前厂房消防检查纪实

检查人员: Scott, Jason, Willson, Hanson 检查时间: 2023年4月28日 检查地点: 1厂房、2厂房室内外 检查内容: 一、室内外消火栓: 室内栓外观正常&#xff1b; 室外栓: 栓体防冻防尘套破损、遗失&#xff0c;消防栓缺少防撞保护&#xff1b; 按规定距离厂房外墙不宜小于5…