引入vue.js和安装vue的区别_Vuejs代码实践中篇

本文介绍了如何使用VueDevtools提升Vue.js的调试效率,包括实时查看组件状态、性能分析等。同时,讲解了组件通信的几种方式,如属性传递、事件、EventBus和Vuex。还探讨了代码分离与按需加载的重要性,以及简写组件注册和全局注册的方法。最后,提到了异步加载组件以优化应用性能。
摘要由CSDN通过智能技术生成
6f1dfb555930a462fce7889e64e56850.png

系列文章:

Vuejs代码实践上篇


安装VueDevtools

使用VueDevtools,会极大提升Vuejs的调试效率。Chrome/Firefox浏览器都有插件可以安装。通过VueDevtools,可以实时查看组件属性,数据,vuex状态,事件,比console.log方便太多。

https://github.com/vuejs/vue-devtools

安装VuePerformanceDevtool

这个Chrome扩展插件能够查看Vue组件的性能表现。

https://chrome.google.com/webstore/detail/vue-performance-devtool/koljilikekcjfeecjefimopfffhkjbne

安装之后,加入下边一行代码,就可以开启成功了

82b802fd9b7c4d1ea88d169eeb7f2588.png

组件通信

组件通信有好多种方式,现在我们使用属性来传递数据给组件。

3259b4fa0df4f8e7c19ce125a5939b97.png

上边这个只是单向通信,如果想通知父组件,告诉它某个数据改变,那就需要用到事件了。

6404918fe99ce72c8fc804fc95b4a02e.png

这里用到了$emit, 父组件中可以监听响应这个$emit事件。

d29c1708f1b1acba486c991496bae8ea.png

$emit()方法只适用于父子组件数据通信。

如果遇到了更复杂的组件通信情况,那么就需要使用EventBus或Vuex。EventBus适用于小型应用项目,组件之间没有太多状态需要共享的情况。大型一些项目,那么就直接上Vuex。

代码分离,按需加载

随着项目越来越大和复杂,我们需要优化应用的加载速度和减小JS主文件的体积。这就需要用到Code Splitting 代码分离,它能加速应用初始化加载完成的速度。

7065987404c96c94623cc645cd9bebb8.png

简写组件注册

使用组件化开发,我们经常需要引入别的组件。于是会经常这样写:

a3f9c9e14da6cb9a3acf370a596c4f50.png

这样写没毛病,但是可以试试下边这个省力的简写方式:

ec77289d97ccdc932d2a143c8363f33c.png

简写注册全局组件

有时候需要全局注册组件,一般方式是先引入组件,然后调用vue.component()方法注册。

729cb6e635f232d0aaa41511e52158a7.png

组件少的话,还不费力。多的话,这个工作量就有点大了。其实可以使用一个对象,组件是value, 然后循环对象的key,注册组件。如下:

80e3e8a58edfab20e7c5ed08c5636ce5.png

不要把所有组件都注册成全局组件

全局组件应该只作为基础组件,这些组件会在应用中很多地方使用。比如Buttons/Inputs这类组件。

不只可以在路由配置文件中,使用组件异步(使用import()加载)。常规情况下也可以:

f203fa71dd7f58ffa106907d5f371ab9.png

import()函数可以执行Promise,然后返回一个组件。

有些高性能要求下,组件内的组件也可以使用异步加载。如下:

d7812810b10c642a58b4a4f4f0e9c6b8.png

打开Chrome浏览器,查看network网络面板,可以看到有个0.js异步请求:

84a398fbb7e0ae6c915897ee6574a9a2.png

异步加载组件能够减小js文件的初始化体积,也能提升应用的性能。

未完待续~

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值