【Vue】使用 Composition API 开发TodoList(1)

使用 Vue3 提供的composition API 来去实现to do list。
代码示例:

我先写一个模板,这个模板里面应该有一个 div,
然后跟一个input框,‍‍
下面再跟一个列表,列表里面我们再去加一些标签。

随便写两个,这块再加一个按钮,上面写一个提交,把它放到一个div里面去,‍‍这样它们会在一行,我们到页面上刷新:

我们现在要去写它的逻辑了,以前我们会想我们在data里面定义数据,
但在composition API里面我们可能就不这么写了,我们写一个 setup函数,

然后我们定一个 const,‍‍首先我们叫做一个input value,
我们inputValue 等于ref,

因为它是一个响应式的数据,所以我要const ref 等于‍‍Vue。
然后我通过 ref 去创建一个响应式的数据,它默认是空。‍‍

然后我把它‍‍导出去,return inputValue,它 return 在这里面我就可以用ta了。

怎么去用呢?‍‍冒号value等于导出来的 inputValue:

改一下初始值改成123:

当它改变的时候,@change的时候,我让它执行一个方法叫做 handleInputValueChange。‍‍
这个方法我写到哪里去?也写到这里去:

在这里我就去改变我的inputValue,当你点击的时候,‍‍我会执行setup函数返回的 handleInputValueChange 这样的一个方法,
它会得到 e,‍‍
然后我们打印一下,来到控制台里面,我们去改一下,当然你发现 change的时候它不会触发,‍‍因为什么?

我们写一个 @input,‍‍因为ta没有 change 事件,再刷新一下:

大家可以看到它会打出 e 。
如果能打出e之后,我就可以通过e点target点value获取到它的值:

保存我们再来刷,‍‍值都可以拿到:

那拿到之后我们就可以做一个事情了,我们可以怎么做?
我可以让‍‍ inputValue点value等于e点target点value。
代码示例:

在这块input框下面我加一个‍‍ div标签,
然后在这里面我去使用 inputValue,看有没有一个双向绑定的效果,我加数据会跟着变,然后整个一个双向绑定,这块就写完了:

当你提交的时候,我是不是还要有一个提交的操作,所以我要 @click等于handleSubmit。‍‍
我这里需要定一个handleSubmit方法 等于这样的箭头函数,

submit的时候,我‍‍首先要干什么?
是不是要把我 input 框里的东西放到一个数组里,然后下面 <ul>后面要去循环,‍‍
那么我们就要定一个数组,我可以怎么定义?

const叫 list等于reactive。‍‍如果你是一个非基础类型的话,你通过reactive来定义,我这块要引入reactive:

接着我们list这个内容我希望它点push,‍‍我们往里放什么?
放当前的 inputValue点value:

然后我们到页面上刷新一下,往里点提交加内容 点提交加内容 我看不出效果,我怎么才能看出效果?
我把 list导出出去,‍‍在这里我导出:

下面这一块我就可以去循环<ul>标签:

保存一下。我们到这里刷一下。‍‍123提交:

点提交没问题。
这样 to do list 我们就通过一个composition API的语法给ta写完了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

代码写注释

请赞赏我

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值