[Day 5] Vue的数据与方法

昨天简单介绍了Vue的 响应式,关於响应式的基本介绍可以直接看昨天那篇,这边就不再赘述(╹ڡ╹ )。今天又会再提到一次,只是难度很稍微的加深了,虽然想加一些字让我的版面看起来很丰富,但是我实在没什麽好说的,就直接开始吧!!

开始罗

虽然Vue没有完全遵循MVVM模型,但是也受到了它的启发,所以常常用vm(ViewModel缩写)这个变量名表示Vue instance(实例、实体),这边就是使用vm。
先来看看一个例子,再从例子里面分析各种观念!!
https://ithelp.ithome.com.tw/upload/images/20210917/20139392ipvaj2yP7T.png

和昨天的例子相比,发现今天的例子在new Vue之前就先创了一个变量data,特别注意一下Vue面的两个data是不一样的,左边的data是Vue里面的property(属性)而右边就是var定义的全新变量。
放上昨天的范例来比较一下
https://ithelp.ithome.com.tw/upload/images/20210917/20139392oeqNktW9nD.png

更改数据

接着来演示一下响应式,我们先更改data,把a从原本的1更改成”略略”
像以下这样,可以发现html很正常的也更新了数据
https://ithelp.ithome.com.tw/upload/images/20210918/20139392NLRMNyTgnX.png
我们换更改vm的a属性,改成”颗颗”,像这样
https://ithelp.ithome.com.tw/upload/images/20210918/20139392xWZizcdLBb.png
竟然发现和刚刚跟改data.a的结果一模一样!!由此可见data.a == vm.a式成立的。

声明属性

打铁趁热,我们在HTML新增一个b属性,发现不管事更改data.b或是vm.b都不会有任何的反应,因为我们从一开始就没有声明b这个东东,必须提前声明才可以。
如果你知道你之後会用上一个属性,但是它在一开始为空值或不存在,这时候只需要预设一些初始值就好了,像这样
https://ithelp.ithome.com.tw/upload/images/20210918/201393928MZ4ALYKOj.png

今天就到这里结束!!不知道各位会不会想念我画的图(。・∀・)ノ,有机会我会再画的,敬请期待~(根本没人想看)


<<:  [Day 4] 阿嬷都看得懂的 CSS, JavaScript 在干嘛

>>:  企划实现(4)

Day 21 Password Attacks - 密码攻击(hash-identifier, john)

前言 昨天我们用sqlmap突破了防守,取得了一些看起来像是帐号密码的东西 user_id user...

[Day18] Vue 3 单元测试 (Unit Testing) - Conditional rendering & Elements visibility

Conditional Rendering 在写元件时最常见的就是会使用 v-if 来动态插入和删除...

Day03 - 随意玩之 API 讯息内文以及 Sign

今天预计讲解下面两个 (也就是下图的步骤 5) API 的 JSON 内容 把内容加上 Nonce ...

公家机关 资讯安全 远端连线 录影 VNC 被控端 呼叫 主控端

公家机关 资讯安全 远端连线 录影 资讯安全稽核 使用UltraVNC 反向连线 VNC 被控端 呼...

Day 11 号志如何使用-等待与号志同步

号志的操作主要分成四种,我们就做个简单的说明: 1.创建跟删除号志:主要分成create/delet...