【VUE学习】day01-vue初始、写法、常用命令、事件修饰符、双向绑定

Blender - Shrinkwrap - 更方便的制作贴合模型的表面来建模 Shrinkwrap 修改器 使用 Blender 想要快速建模可以贴合现有模型表面的效果:衣服、皮肤、等效果,可以使用 Shrinkwrap 修改器,这个修改器的名字其实按照英文上的理解,翻译为:收缩的包裹效果 应用 如这块铁皮,它要贴合机身弯曲的效果,可以先建好一个铁皮,再 Shrinkwrap 到一个指的网格上 留意的参数 Target 要贴合的对象(目前我已知是可以贴合到网格对象上,实在是方便) VertexGroup 顶点组,和之前讲到过的,顶点组可以组设顶点的权重,意思这个可. 阅读详情

vue初始

vue介绍

  • vue是构建用户界面的渐进式框架,采用自底向上逐层应用开发
  • 核心理念:数据驱动视图,组件化开发

框架和库的区别

  • 框架:一套完整的解决方案,对项目的侵入性较大。如果项目需要更换框架,则需要重构项目
  • 库:提供某一个功能,对项目的侵入性较小。如果某个库无法实现需要的功能,可以简单换到其他库

MVC和MVVM的区别

  • MVC是后端分层开发的概念
    • V:view 视图层。作用:发送数据,展示数据
    • C:controller 调度层。作用:响应数据,返回数据
    • M:model 模型层。作用:处理数据,和数据库打交道
  • MVVM是前端视图层的概念
    • V:view 视图层。作用:展示数据
    • VM:view-model 视图模型层。作用:连接视图层和模型层,承上启下
    • M:model 模型层。作用:逻辑处理
      在这里插入图片描述

vue的书写

  • 1.引入vue.js文件
  • 2.创建视图层(body中创建标签)
  • 3.创建vue实例化对象 new Vue( { el,data,methods } )

vue对象中的el data methods名字不可变,单词拼写错误会报错

渲染数据常用命令

插值表达式

使用{{ }}引用变量,将data中的变量值渲染到页面上,可以做简单的计算

v-text

替换标签中原有的内容,不会解析富文本

v-html

替换标签中原有的内容,会解析富文本

	<div id="app">
        <!-- 插值表达式,使用{{}}引用变量,将data中的变量值渲染到页面上,可以做简单的计算 -->
        <div>{{msg}}</div>
        <!-- v-text,替换标签中原有的内容,不会解析富文本 -->
        <div v-text="msgText"></div>
        <!-- v-html,替换标签中原有的内容,会解析富文本 -->
        <div v-html="msgHtml"></div>
    </div>
	let vm = new Vue({
        el: '#app',//控制区域
        data: {
            msg: '插值表达式',
            msgText: 'v-text',
            msgHtml: 'v-html',
        },//变量
        methods: {
            }
        }//事件
    })

元素绑定常用命令

v-bind

元素属性绑定
在元素标签内部 v-bind:‘属性名’=‘data变量名’,可以简写成**:属性名=‘data变量名’‘**

        <!-- v-bind,给元素绑定属性,可以简写成: -->
        <a :href="url">百度</a>
let vm = new Vue({
        el: '#app',//控制区域
        data: {
            url: 'http://www.baidu.com'
        },//变量
        methods: { }//事件
    })

v-on

元素事件绑定
在元素标签内部 v-on:‘事件类型’=‘事件函数名’,可以简写成**@事件类型=’事件函数名‘**

        <!-- v-on,给元素绑定事件,可以简写成@ -->
        <button @click="btn">点击弹框</button>

事件函数写在vue实例对象的methods里面

let vm = new Vue({
        el: '#app',//控制区域
        data: {
        },//变量
        methods: {
            btn(){
                alert('v-on绑定事件');
                timer=setInterval(()=>{
                    console.log(this);//只有使用箭头函数,this才指向vue实例对象
                },1000)
            }
        }//事件
    })

命令修饰符

举例说明:给出三个颜色大小各不相同的盒子,样式代码如下,样式如图

	<div id="app">
        <div @click="big" class="big">
            <div @click="middle" class="middle">
                <div @click="small" class="small">
                </div>
            </div>
        </div>
    </div>

css样式

        .big {
            width:400px;
            height:400px;
            background-color: #b0ffff;
            margin:10px auto;
        }
        .middle {
            width: 300px;
            height: 300px;
            background-color: rgb(255, 141, 141);
            margin: 10px auto;

        }
        .small {
            width: 200px;
            height: 200px;
            background-color: rgb(167, 166, 255);
            margin: 10px auto;

        }

js代码

    let vm = new Vue({
        el:'#app',
        data:{

        },
        methods:{
            big(){
                console.log('big');
            },
            middle() {
                console.log('middle');
            },
            small() {
                console.log('small');
            },
            baidu(){
                console.log('跳转百度');
            }
        }
    })

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

.stop

阻止事件冒泡,即事件由内向外触发
例如,点击最小的盒子时,打印结果会从小到大触发
在这里插入图片描述
在@事件类型后面加上.stop可以阻止事件冒泡

	<!-- .stop 阻止事件冒泡 -->
        <div @click="big" class="big">
            <div @click="middle" class="middle">
                <div @click.stop="small" class="small">
                </div>
            </div>
        </div>

再点击最小的盒子时,由于阻止了冒泡,因此只打印small
在这里插入图片描述

.capture

添加事件捕获,在事件触发时会先触发事件捕获,再触发事件冒泡

	<!-- .capture 添加事件捕获 -->
        <div @click="big" class="big">
            <div @click.capture="middle" class="middle">
                <div @click="small" class="small">
                </div>
            </div>
        </div>

给middle盒子添加.capture,触发small盒子会依次打印middle(捕获),small(触发),big(冒泡)
在这里插入图片描述

.once

只会触发一次事件
给small添加.once,第二次不再触发(但仍会触发事件冒泡)
第一次正常打印,

	 <!-- .once 事件只触发一次 -->
        <div @click="big" class="big">
            <div @click="middle" class="middle">
                <div @click.once="small" class="small">
                </div>
            </div>
        </div>

.self

只有事件在元素本身触发时才会执行回调函数

        <!-- .self 事件在元素本身触发时才触发 -->
        <div @click.self="big" class="big">
            <div @click="middle" class="middle">
                <div @click="small" class="small">
                </div>
            </div>
        </div>

只有点击big盒子时才会触发打印big

.prevent

阻止默认事件,阻止表单提交、a连接标签跳转

<!-- .prevent 阻止默认事件 -->
        <a href="http://www.baidu.com" @click.prevent="baidu">百度一下</a>

会触发事件打印“跳转百度”但页面不会跳转

数据双向绑定

v-model

一般只用于表单元素(input、select、textarea等)的value属性
v-model:value=‘data中的变量值’,“:value”可以省略

双向绑定的原理

通过数据劫持结合发布者-订阅者模式实现。通过Object.defineProperty()劫持各个属性中的setter和getter。当数据发生变化时,执行相应的函数从而进行视图更新。

一个简单的加法器,双向绑定用于获取用户在input框里输入的值

	<div id="app">
        <!-- v-model 双向绑定,用于绑定表单控件的value属性 value可以省略-->
        <!-- v-bind只能单向绑定,用户在input框输入的值无法获取到 -->
        <input type="text" v-model="value1">+<input type="text" v-model="value2">
        <button @click="add">=</button>
        <input type="text" v-model="value3">
    </div>
	let vm = new Vue({
        el: '#app',
        data: {
            value1: '',
            value2: '',
            value3: ''
        },
        methods: {
            add() {
                this.value3 = Number(this.value1) + Number(this.value2)
            }
        }
    })
使用Wireshark抓取用户在网站的登陆密码 (POST请求是浏览器向服务器提交数据的方式,我们的用户名和密码就是这样提交出去的),单击点开,发现我们的账号和密码,就被抓取到了,在。(注意哦,要去掉http和/,比如http://www.4399.com/,我们只需要记下4399.com即可)(这句话是筛选数据,就是只显示IP为我们要抓取网站的数据) ,点击右边的蓝色箭头。这就是Wireshark简单的抓取登录密码的教程,只适用于http协议的网站。”打开,是这个样子,上面的数据先不用管,我们先点击左上角红色的方块停止抓包。,然后回车,得到的IP为。 阅读详情

相关推荐

通信原理 | 窗函数 | 矩形窗 | 汉宁窗 | 汉明窗 | 布莱克曼窗 | 补零对频谱的影响

比如,原信号是一个周期的余弦信号,又给它补了9个周期长度的0,那么信号并不是10个周期的余弦信号,而是一个周期的余弦加一串0,补零并没有带来新的信息!频谱分辨率的含义是两个频率不同的信号在频率上可分,也就要求他们不能落到一个频域函数的主瓣上,所以,如果待分析的两个信号频率接近,而时域长度又短,那么在频域上他们就落在一个频域函数的主瓣内了,补再多的零也无济于事。而形状(主瓣宽度)是由补零之前的信号长度决的,补零的作用只是细化了频域序列,并没有改变其主瓣宽度。所以,汉宁窗牺牲了分辨率,换来了旁瓣泄露的减小。

若北辰 1271

Vueday01-Vue基础入门

学习Vue的第一天 Vue基础

少年你真的要止步于此嘛。 1410

YOLO26改进策略【YOLO和Mamba】| 2024 VM-UNet,高效的特征提取模块VSS block 二次创新提高精度

VM-UNet模型设计的出发点是解决现有CNN-based和模型在医学图像分割中的局限性,利用(SSMs)的优势,提出一种更有效的医学图像分割模型。具体来说,CNN-based模型在捕捉长距离信息方面存在不足,而模型由于自注意力机制的二次复杂度导致计算负担较重。SSMs模型如Mamba不仅在建模长距离依赖方面表现出色,还具有线性计算复杂度,这为VM-UNet的设计提供了理论基础。

Limiiiing的博客 139

VueJS 学习笔记 day - 01

以下笔记中的部分代码以及文字说明来自黑马程序员视频 只用作个人学习使用 有错误的地方请私信指出 如有侵权请联系删除 VueJS 学习笔记 day - 01 第一个Vue程序 <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&gt...

xuzhi7162的博客 309

Vue.js day01 Vue事件修饰符双向,简易计算器

事件修饰符 .stop 阻止冒泡 .prevent 阻止默认事件 .capture 添加事件侦听器时使用事件捕获模式 .self 只当事件在该元素本身(比如不是子元素)触发时触发回调 .once 事件只触发一次 双向 v-model v-model可以实现表单元素和Model中数据的双向数据, 注意v-model只能运用在表单元素中,比如 input(radio,text,address,...

qq_40181324的博客 192

Vue学习笔记01——插值表达式和事件修饰符

最近学长给我们一个关于前端Vue的教学资料,他认为非常实用,值得我们花时间去学习。我这边的项目也快完成了,省出一些时间,正好可以每天挤出一些时间学习Vue的知识! 这是我前两天的学习笔记,正好是个day1内容,和大家分享一下! 初始模板 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> ...

qq_38988704的博客 454

10.29 vue day 01 初始Vue Vue模板语法 方式 事件修饰符

初识Vue: 1.想让Vue工作,就必须创建一个Vue实例,且要传入一个配置对象; 2.root容器里的代码依然符合html规范,只不过混入了一些特殊的Vue语法; 3.root容器里的代码被称为【Vue模板】; 4.Vue实例和容器是一一对应的; 5.真实开发中只有一个Vue实例,并且会配合着组件一起使用; 6.

m0_56356342的博客 153

Vue学习笔记day01

文章目录一、Vue是什么?二、数据三、el 和 data 的两种写法el的两种写法data的两种写法四、MVVM模型五、Object.defineProperty六、事件处理七、事件修饰符1.prevent:阻止默认事件2.stop:阻止事件冒泡3.once:事件只触发⼀次八、键盘事件 一、Vue是什么? ⼀套⽤于构建⽤户界⾯的渐进式JavaScript框架 二、数据 vue中有两种数据方式: 单向(v-bind):数据只能从data流向页面。 双向(v-model):数据不仅能从da

qq_45334571的博客 464

vue学习Day01-Day03

当当当,最近在边学vue边实习,公司用到的是vue框架,而我之前先学的是react框架,所以我最近要学习vue框架,有些东西是相通的,难度还可以吧~~ vue 学习 Day1: 1.使用插值表达式会出现闪烁问题,使用“v-text”指令却不会? 因为js还没加载完成的话,插值表达式被当成字符串渲染了,等js加载完成再解析成数据 。可通过v-cloak解决闪烁问题 V-cloak可以和css规则:[v-cloak]{display:none}一起用,隐藏未编译的插值表达式直到实例准备完毕.

小白的学习路 281

Day_01 Vue基础

文章目录1-Vue指令介绍(掌握)2-Vue文本操作(掌握)3-Vue事件处理(掌握)4-Vue事件修饰符(掌握)5-Vue双向(掌握) 1-Vue指令介绍(掌握) 概述 是带有 v- 前缀的特殊属性,不同指令具有不同含义。例如 v-html,v-if,v-for。 使用指令时,通常编写在标签的属性上,值可以使用 JS 的表达式。 常用指令 2-Vue文本操作(掌握) 概述 使用v-html、v-text指令,将Vue变量插入到标签内容中。 代码实现 <!DOCTY

lbw18的博客 426

Vue2 - Day01 - 基础

学习前端开发尤其是 Vue.js 是一个非常有价值的选择。它不仅帮助你深入理解 Web 技术,还能提升你在实际项目中的开发能力。Vue.js 的响应式数据、组件化开发、以及与后端技术的良好兼容,使得它在前端开发中具有广泛的应用场景。掌握 Vue.js 可以为你提供更多就业机会,它的简洁性和易学性也使你能够更快上手,逐步提高开发水平。

m0_74154295的博客 1707

什么是Vue.js(day1)

什么是Vue.js Vue.js是目前最火的一个前端框架,React是最流行的一个前端框架,(React除了可以开发网站,还可以开发手机APP,Vue语法也是可以进行手机APP开发的,需要借助week); Vue.js是前端的主流框架之一和Angular.js、react.js,成为前端的三大主流框架; Vue.js是一套构建用户界面的框架,只关注视图层,他不仅易于上手,还便于与第三方库或既有项...

谷小伟的博客 319

VUE学习系列笔记day01

VUE官网:https://vuejs.org/v2/api/   1、vue可以当做库使用(引入js,可调用api),也可以当做框架使用。其是一个渐进式框架,渐进层次为:声明式渲染–组件系统–客户端路由–集中式状态管理–项目构建   2、{{}}为插值表达式,可将数据填充到html标签中,可支持一些简单数据表达式的计算.   el:元素挂载位置(值可以是css选择器,如:#app id选择器位;此外也可以是DOM元素,如:document.getElementById(“app”)获取)   data:

qq_41522183的博客 181

vue 学习 day01

一 如何义一个基本的Vue代码结构 插值表达式 和 v-text 3 v-cloak 使用 v-cloak 能够解决 插值表达式闪烁的问题 v-html 渲染成网页 v-bind Vue提供的属性机制 缩写是 : v-on Vue提供的事件机制 缩写是 @ 二在 VM实例中,如果想要获取 data 上的数据,或者想要调用 methods 中的 方法,必须通过 ...

lm_567的博客 187

Vue学习(二)

数据发生变化会影响到视图 而v-bind的数据视图变化 而数据不受影响 这就是单向的数据v-model 双向数据 数据改变则视图发生变化 视图改变 则数据响应发生变化代码展示。

思考是大脑的源代码,未经编译,却已运行一生。——调试自己,迭代世界。 1560

Vue2学习笔记(尚硅谷张天禹老师)day-01

Vue 一、vue核心 1、vue简介 1.1、vue是什么 一套用于构建用户界面的渐进式JavaScript框架。 渐进式:vue可以自底向上逐层应用;简单应用:只需一个轻量小巧的核心库;复杂应用:可以引入各式各样的的vue插件。 1.2、谁开发的 华人 尤雨溪; vue2(攻壳机动队) vue3(海贼王) 1.3、vue的特点 采用组件化模式,提高代码复用率、且让代码更好的维护 声明式编码(原生js为命令式编码),使无需直接操作DOM,提高开发效率 使用虚拟DOM+优秀的Diff算法,尽量复用DOM

运气只是当机会来临时,你已为它准备好。 5119

VUEJS Day01快速了解

Vue.js是一套构建用户界面的渐进式JavaScript框架。与其他重量级框架不同的是 ,Vue采用自底向上增量开发的设计。Vue的核心库只关注视图层,它 不仅易于上手,还便于与第三方库或既有项目整合,另一方面,当与单文件组件 和VUe生态系统支持的库结合使用时,Vue也完全能够为复杂的 单页应用程序(spa:single page web application)提供驱动 什么是单页面应用: 单页Web应用就是只有一张web页面的应用,单页应用程序 是加载单个HTML页面并在用户与应用程序交互时动态更新

shibaweijin的博客 265

Vue学习笔记day01总结

目录 1.后端MVC框架与前端MVVM框架图解 2.Vuejs基本用法 2.1Vue基本格式: 2.2常用属性总结 2.3时器的使用 2.4事件修饰符 2.5 v-model 实现数据的双向 2.6给元素设置class类样式 2.7 v-for 指令的四种使用方式 2.8 v-if 和 v-show 指令 1.后端MVC框架与前端MVVM框架图解 2.Vuej...

Gavid的博客 685

Vue2.x-day01

文章目录Vue2.x使用教程01.第一个Vue实例02.内容渲染指令03.属性指令04.Javascript表达式05.事件指令06.事件对象$event07.事件修饰符08.按键修饰符09.双向指令10.v-model的修饰符11.条件渲染指令12.v-if配套的指令13.v-for的基本用法14.强调v-for循环中key值的注意点15.label的for属性 Vue2.x使用教程 01.第一个Vue实例 <!DOCTYPE html> <html lang="en"&gt

Java721的博客 213

vue基础-day01

1.MVC与MVVM的区别 MVC 是后端的分层开发概念。分为view(视图层)、controllor(调用层)、model(数据层),视图层是展示给用户的,调用层可以看作是为视图层和数据层传递信息的。 MVVM是前端视图层的概念,主要关注于视图层分离,也就是说:MVVM把前端的视图层,分为了三部分Model、View、VM ViewModel; 2. Vue.js的代码结构 1、引入vue.js 2、写视图层:我们要展示的内容 3、实例化Vue() ...

m0_52618824的博客 161

vue学习day01vue基本使用

vue简介

Triumph_light的博客 398

STM32f103_acim_FOC.rar_ACIM 异步电机_ST FOC_STM32_ACIM_异步电机控制

基于st的m3单片机STM32f103 矢量控制 驱动交流异步电机的源程序

基于虚幻引擎与AirSim的无人机作战仿真系统构建方案及完整技术文档

【项目概述】本系统采用虚幻引擎与AirSim平台构建,专门用于模拟无人机作战场景的完整解决方案,包含全套技术资料与详细说明文档。 【技术特点】 1. 项目源码在学术评审中获得高度评价,综合答辩分数为95分,体现了系统的可靠性与创新性。 2. 所有程序模块均通过严格测试,确保功能稳无误后方可交付使用。 3. 适用于人工智能、通信工程、自动化、物联网等信息技术相关领域的教学研究、科研实验及工程开发,尤其适合作为毕业设计或课程实践的参考案例。 4. 用户可根据需求对现有代码进行扩展调整,以适配特应用目标,亦可直接用于学术或实践任务。 本资源旨在促进技术交流与知识共享,欢迎相关领域从业者及学习者参考使用。资源来源于网络分享,仅用于学习交流使用,请勿用于商业,如有侵权请联系我删除!

上一篇: 【ES6】箭头函数
下一篇: 【VUE学习】day02-类名的用法、style样式的用法、v-for遍历、v-if/v-show隐藏
SOD_M
博客等级 码龄5年 252粉丝 24原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值