课程名称:2022持续升级 Vue3 从入门到实战 掌握完整知识体系
课程章节:6-6 使用 Composition API 开发TodoList(1),6-7 使用 Composition API 开发TodoList(2),6-8 computed方法生成计算属性
主讲老师:Dell
课程内容:
今天学习的内容包括:使用 Composition API 开发 TodoList,computed 方法生成计算属性
今日知识点: 0. 非基础类型通过 reactive 来定义 1、如果事件直接绑定函数名称,那么默认会传递事件对象作为事件函数的第一个参数; 2、如果事件绑定函数调用,那么事件对象必须作为最后一个参数显示传递,并且事件对象的名称必须是 $event
示例代码:
<script>
// 关于 list 操作的内容进行了封装
const listRelativeEffect = () => {
const { reactive } = Vue;
const list = reactive([]);
const addItemToList = (item) => {
list.push(item);
}
return { list, addItemToList }
}
// 关于 inputValue 操作的内容进行了封装
const inputRelativeEffect = () => {
const { ref } = Vue;
const inputValue = ref('');
const handleInputValueChange = (e) => {
inputValue.value = e.target.value
}
return { inputValue, handleInputValueChange}
}
const app = Vue.createApp({
setup() {
// 流程调度中转
const { list, addItemToList } = listRelativeEffect();
const { inputValue, handleInputValueChange} = inputRelativeEffect();
return {
list, addItemToList,
inputValue, handleInputValueChange
}
},
template: `
<div>
<div>
<input :value="inputValue" @input="handleInputValueChange" />
<button @click="() => addItemToList(inputValue)">提交</button>
</div>
<ul>
<li v-for="(item, index) in list" :key="index">{{ item }}</li>
</ul>
</div>
`,
});
const vm = app.mount('#root');
</script>
示例代码2:
<script>
// computed 计算属性
const app = Vue.createApp({
setup() {
const { reactive, computed } = Vue;
const countObj = reactive({ count: 0});
const handleClick = () => {
countObj.count += 1;
}
let countAddFive = computed({
get: () => {
return countObj.count + 5;
},
set: (param) => {
countObj.count = param - 5;
}
})
setTimeout(() => {
countAddFive.value = 100;
}, 3000)
return { countObj, countAddFive, handleClick }
},
template: `
<div>
<span @click="handleClick">{{ countObj.count }}</span> -- {{ countAddFive }}
</div>
`,
});
const vm = app.mount('#root');
</script>课程收获:
今天还是只学了三个小节,第六章还剩下五个待学习章节。忙里偷闲,明天尽力学完第六章。Vue 的 Composition API 还是很值得深入的,毕竟可以提高代码的可读性和可维护性。
今日课程学习时间大约花费 13 分钟。
點擊查看更多內容
為 TA 點贊
評論
評論
共同學習,寫下你的評論
評論加載中...
作者其他優質文章
正在加載中
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
