老师有一个问题。

来源:2-8 使用 Composition API 开发TodoList(2)

帅得无心敲代码

2021-05-30 00:08:13

按照视频老师的方法拆分代码。按钮输出渲染了以后,input框里还有值, 我想把这个值清除掉。 但是在按钮点击事件里面 操作不了 双向绑定的值, 这该怎么操作呀?对了还有一个问题, 在app实例外外面使用Vue实例为啥能拿到实例里面的方法呢?我还以为只能在app实例里面使用呢

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>todo List</title>
</head>
<body>
<div id="root"></div>
<script src="./vue3基础源码/vue3.js"></script>
<script>

const inputFn = () => {
const {ref} = Vue;
let inputValue = ref("");

return {inputValue};
}

const toList = () => {
const {reactive} = Vue;

const list = reactive([]);
const handleClick = (val) => {
list.push(val);
val = '';
}
return {handleClick,list};
}


const app = Vue.createApp({
setup(props,context){
let {inputValue} = inputFn();

const {handleClick,list} = toList();

return {inputValue,handleClick,list};

},
template:`
<input v-model="inputValue" />
<button @click="handleClick(inputValue)">提交</button>
<ul>
<li v-for="(item,index) in list" :key="index">{{item}}</li>
</ul>
`
});



const vm = app.mount("#root");
</script>
</body>
</html>


写回答

1回答

好帮手慕言

2021-05-30

同学你好,解答如下:

1、可以整合到一个方法中(方便获取inputValue),点击按钮之后,把inputValue的值清空

http://img.mukewang.com/climg/60b2fdd209d12bf108570821.jpg

2、是指const {ref} = Vue;这句代码吗?如果是的话,那么使用script引入vue之后。就可以拿到ref方法的。如果不是这句代码,可以详细描述下,老师帮助解答。

祝学习愉快~


0

0 学习 · 15276 问题

查看课程