所有分类
  • 所有分类
  • 后端开发
Vue3 Composition API大揭秘:告别繁琐,玩转代码

Vue3 Composition API大揭秘:告别繁琐,玩转代码

从Vue2升级到Vue3,开发者们可以期待更加快捷和高效的构建工具链。Vue3相较于Vue2,在构建工具链方面做出了许多改进,提供了更加快捷和高效的开发体验。今后,在项目开发中,我们可以更加倾向于使用Vue3,利用其更高效的构建工具链来提升

一、Composition API

哈喽!今天咱就来聊聊Vue3新出炉的Composition API呗。这可是让Vue3和Vue2有啥不一样的强大功能呀。以前用Options API,得搞些诸如data、method、computed之类的东西规整代码,可现在,Vue3里你想怎么弄就怎么弄,更清爽好理解。

例如,在Vue2中,当我们需要定义一个计数器功能时:

javascript
data(){
  return {
    count: 0
  };
},
methods:{
  increment(){
    this.count++;
  }
}

export default {
  data() {
    return {
      message: 'Hello, Vue2!'
    }
  },
  methods: {
    handleClick() {
      this.message = 'Vue2 is awesome!'
    }
  }
}

用Vue3的话,直接用composition API 就行了,操作起来跟玩似的。

import { ref } from ‘vue‘;

export default {

setup(){

const count = ref(0);

const increment =()=>{

count.value++;

};

import { ref } from 'vue'
export default {
  setup() {
    const message = ref('Hello, Vue3!')
    const handleClick = () => {
      message.value = 'Vue3 is awesome!'
    }
    return {
      message,
      handleClick
    }
  }
}

return { count, increment };

总的来说,用上这API,我写的程序变得整洁又易懂哟~

二、更快速的渲染

Vue3可不止是Composition API改进这么简单咧!它还换了新的虚拟DOM算法和更快的渲染流程,页面更新速度嗖嗖的,简直就像是闪电!你想,以前的Vue2,每个组件都得跑一遍,现在有了这个新算法的Vue3,它只会改动变化过的部分,大大减少了DOM操作,真的超级赞

给你举个例子以前用Vue 2做列表数据处理有点麻烦,得处理好多无谓的DOM操作。但是现在有了Vue 3,情况就不一样因为渲染过程升级并优化了,所以那些多余的工作量就能省去!这样一来,网页就能跑得更快更溜哦~

三、更强大的TypeScript支持

Vue3这次在TypeScript上真的不错,改进了好多。你知道,TypeScript其实就是给JavaScript升级了,可以帮我们自动检查问题。用Vue3搭配起来TypeScript,感觉顺手多了,还能进行强大的类型推断和检查。

简而言之,你要玩转Vue2+TypeScript的话,就是两个选择啦:要么找个别的类型声明文件来用;或者自己行动起来做类型转化呗。

typescript
// Vue2中使用TypeScript
export default Vue.extend({
  data(){
    return {
      message:'Hello!'
});

{{ title }}

  • {{ item.name }}

简单来说,Vue3用Typescript改了个玩法,让你能轻松运用它强大的类型推测功能!
// Vue3中使用TypeScript
};
这样使得开发过程更加可靠和安全,减少潜在错误出现的可能性。
四、Setup函数
看了Vue3老师那节课后,我知道了在设计器里可以搞个setup函数,真是个神助攻,悄悄儿把父组件给的props存起来,只把要展示的玩意儿和操作交给模板。这样子,每个组件要用啥不用啥一目了然,再也不担心乱七八糟!
举例来说,在一个简单组件中使用setup函数:
props:['initialCount'],

  

{{ title }}

  • {{ item.name }}
import { ref } from 'vue' const title = ref('Vue3 Demo') const list = ref([ { id: 1, name: 'Apple' }, { id: 2, name: 'Banana' }, { id: 3, name: 'Orange' } ])

Vue3 Composition API大揭秘:告别繁琐,玩转代码

setup(props){
要是遥控器上没显示分数,你就设个0试试看。
function increment(){
}
五、Teleport组件
Vue 3又出新彩蛋啦——Teleport,直接就能把组件“移位”到别处展示。对于那些乱飘的通知什么的,简直就是神器
做个炫酷载入组件?把 Teleport 往body上一贴搞定!
html

<div v-if=”loading” class=”loading”>Loading…</div>

六、Suspense组件

还有个棒顶的新变化就是加入了Suspense组件,可以边等加载数据时还能看个loading画面,感觉好用好多!

比如,用Suspense组件就做得到异步加载用户信息~

Error!{{ error.message }}

Loading…

七、自定义指令API

知道吗?Vue3新出了个大牛功能——自定义指令API。那可真是个神奇的东西,让编写语法变得敲级简单明了。只需在你的代码中插入“app.directive”,接着填入你需要的钩子函数就行!

  

{{ title }}

import Vue from 'vue' export default Vue.extend({ data() { return { title: 'Vue2 with TypeScript' } } })

例如创建一个自定义指令实现点击外部关闭弹窗功能:

在我们App里,有个叫”点击外部环境”的功能。这个功能厉害在哪儿呢?简单来说就是,当你正在看网页时,微信突然来了条消息要回吧?别急,只要轻轻一点这个按钮,立马就可以切换到微信去回复啦!

beforeMount(el, binding){

当按键在外面时,就启动这个事件。

“要是’el’和点的东西都不沾边,更别谈包含了,那就……”

binding.value();

}

快来试试看,按下按钮就能触发点击外部事件了!

  

{{ title }}

import { ref } from 'vue' const title = ref('Vue3 with TypeScript')

},

unmounted(el){

别再拼命加’点’的监测,先把那个’点外边’的事件关掉再说!

总结:

看,比起Vue2,Vue3的工具链强到爆炸!首先就有个好用得飞起的Composition API在手,然后速度快如闪电,还有厉害的TS助阵,开发起来那叫一个轻松可靠。所以,要是想用Vue3搞项目,不仅效率高上天,代码质量还会提高好多!

原文链接:https://www.icz.com/technicalinformation/web/javascript/2024/04/14003.html,转载请注明出处~~~
0

评论0

请先
注意:请收藏好网址www.icz.com,防止失联!站内免费资源持续上传中…!赞助我们
显示验证码
没有账号?注册  忘记密码?