这篇文章整理了日常开发中高频使用的Vue3技巧,涵盖语法、组件、工具和性能优化。代码可以直接复制使用,帮你减少冗余代码。
用unplugin-auto-import插件,不用手动导入ref、reactive、computed、watch、useRoute这些API,直接就能写。
TypeScript环境下,不用重复写类型,直接用TS类型声明props。
// 更简洁的写法:直接解构加默认值 const { title = ‘默认标题’, list = [] } = defineProps<{ title?: string list?: number[] }>()
// 直接使用 emit(‘change’, 123)
不用分别写props和emit,一行就能实现父子双向绑定。
子组件:
父组件:
把表单、请求、弹窗这些逻辑抽成useXxx,所有页面都能复用。
// useCount.js import { ref } from ‘vue’
export function useCount() { const count = ref(0) const add = () => count.value++
return { count, add } }
// 页面中使用 const { count, add } = useCount()
不用写很多v-if,切换组件时自动缓存状态。
封装自定义指令,替代重复的document.getElementById。
// 自动聚焦指令 app.directive(‘focus’, { mounted(el) { el.focus() } })
// 使用
模板里不用另外定义变量,直接就能用。
{{
\(props.title }}
用v-bind可以一次绑定多个属性。
修改Element Plus或Ant Design组件样式时,不用加important。
用unplugin-vue-components插件,组件不用手动import,直接用。
用toRefs可以保证解构后的变量依然是响应式的。
const state = reactive({ name: ‘张三’, age: 18 })
// 正确做法:解构后依然保持响应式 const { name, age } = toRefs(state)
}
{{ fullName }}
把应用实例挂载到全局,浏览器控制台可以直接调试。
// main.ts app.config.globalProperties.$vm = app
// 浏览器控制台直接用 \(vm.\)route \(vm.\)store
通过改变key值来强制刷新组件。
// 调用这个方法就能刷新组件 const refresh = () => refreshKey.value++
VSCode插件方面,推荐安装Volar和Vue 3 Snippets,这两个对代码补全很有帮助。
包管理工具建议用pnpm代替npm,安装速度快3倍。
开发服务器用vite代替webpack,热更新几乎是秒开。
代码格式化用prettier加eslint,可以自动规范代码。
多用自动导入和defineProps、defineEmits的简写写法,能减少不少模板代码。
逻辑尽量抽成use开头的组合函数,复用率能拉满。
v-model、v-bind、:deep这些是日常最高频的简化语法,多用就对了。
配合Volar和Vite,开发体验会好很多。
本文内容仅供个人学习、研究或参考使用,不构成任何形式的决策建议、专业指导或法律依据。未经授权,禁止任何单位或个人以商业售卖、虚假宣传、侵权传播等非学习研究目的使用本文内容。如需分享或转载,请保留原文来源信息,不得篡改、删减内容或侵犯相关权益。感谢您的理解与支持!
链接: https://fly63.com/article/detial/13607
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/258822.html