专业IT网络知识平台,分享IT百科知识、生活百科知识解答!

易企推科技
易企推科技

mpvue是什么,详解基于Vue的开发框架mpvue

来源:小易整编  作者:小易  发布时间:2023-03-28 10:43
摘要:mpvue是什么,详解基于Vue的开发框架mpvue接触微信小程序有一段时间的开发者或开发团队,我相信多多少少都会为自己搭建封装一些便于开发的框架/脚手架,尤其是一些做过Web开发的开发者,受到现如今Web主流开发框架如Angular,Re...

运行该命令,编译器不会自动检测新加入的文件)。成功后通过微信开发者工具的模拟器查看,结果界面将会是这样的:

点击“点我呀!”按钮,计数器就会累加点击次数并更新界面上的数字;而点击“清零”按钮,则会将统计数字归零。

回到代码上来看,对于click-counter.vue的使用者index.vue来说,它并不关心太多click-counter.vue的实现细节,引入该组件文件并进行声明,就可以通过标签的形式来使用它了,非常简单明了。而且,这样一个click-counter.vue组件也可以被拿到其他的Vue/mpvue代码中使用,其他使用者也并不需要关注它的实现细节,而只需要关心它能实现什么功能就行了。这就是组件封装带来的好处。

不过,目前的这个click-counter组件还没有跟它的父组件之间有什么交互或通信,没有体现出“暴露接口”的特性,那让我们来增加点代码,了解下这一特性。首先解释一下我们要实现的功能:组件可以接收一个外部设置的初始点击次数值,在点击“点我呀!”按钮的时候,从这个初始值开始进行累加;并且点击按钮后,可以通知组件的使用者(即父组件)当前的点击统计值。

修改click-counter.vue的代码:

修改index.vue的代码:

观察以上修改后的代码可以发现,在click-couter.vue中的主要变化是:

  1. 使用props定义了一个名为initNum的数字型组件属性(且初始值为0)。它可用于接收使用组件外部传入的值。然后,这个initNum值被赋值到data中的属性num上作为它的初始值。

  2. 在两个按钮的click事件处理方法中,额外调用了一个notifyNum()方法,它向组件触发了一个自定义事件clicknum并携带了当前点击次数值。

而在index.vue中的主要变化是实例化click-counter组件的这行代码:

实例化组件的时候,为组件传入了initNum属性值10;并且添加了一个对自定义事件clicknum的监听方法。

这样一个结构实现了数据进入组件/数据传出组件的机制,父子组件之间就能实现数据通信。通过有限的通信点进行数据互换,而不是直接进行函数调用,可以使得代码结构更优雅、更易维护。

组件的复用性

组件的复用性就好理解的多了,创建组件的目的,大多数时候就是希望这个组件可以被多个地方、多次使用,避免编写重复的代码。比如我们前面的计数器组件,有可能一个项目中的多个页面会用到,也可能一个页面就会使用多次。

Vue组件的复用也是很容易的,比如我们要在前面例子中的index.vue中复用计数器组件,创建3个计数器,那么直接在模板部分编写3个标签就行了:

运行后的效果如下图所示,这三个计数器都能独立统计各自的点击数量:

组件的扩展性

谈到扩展性,有面向对象编程经验的开发者就会想到“继承(extends)”。继承是一种比较有效的扩展机制,不过随着继承的层次变深,代码也会变得难以理解。在Vue组件中,没有采用继承的机制,而是推荐使用“组合”的方式。

在组合理念下,我们尽量将想复用性高的组件设计到最小可拆分单位,比如按钮、输入框、单选框等等,然后再将这些低层组件放入更高层组件中,一层一层,慢慢拼装出满足需求的业务界面。

除了组合,Vue组件还提供了插槽(Slot)功能,相当于在一个组件中挖出了一个或多个坑,在具体使用这些具有插槽的组件时,可以选择往坑里面填什么内容(其他组件)。

举个例子,在计数器组件中,我们在清零按钮后面用<slot></slot>挖了一个坑:

而后,在index.vue中使用计数器组件时,在<click-counter>标签体中放入了额外的内容,会被传入该组件中去用于填坑:

从运行结果可以看到,清零按钮后面已经多出了我们传入的复选框和文字内容:


本文地址:IT问答频道 https://www.hkm168.com/itwenda/942089_3.html,易企推百科一个免费的知识分享平台,本站部分文章来网络分享,本着互联网分享的精神,如有涉及到您的权益,请联系我们删除,谢谢!


IT问答
小编:小易整编
相关文章相关阅读
  • 如何使用Vue技术进行移动端开发

    如何使用Vue技术进行移动端开发

    如何使用Vue技术进行移动端开发随着移动互联网的迅猛发展,移动端应用的开发变得越来越重要。Vue.js作为一款轻量级、高性能的前端框架,被广泛应用于移动端开发中。本文将介绍如何使用Vue技术进行移动端开发,并给出具体的代码示例。一、准备工作...

  • 前端开发需要哪些软件

    前端开发需要哪些软件

    编程一般用的软件有:1、hbuilder;2、sublimetext;3、webstorm;4、phpstudy;5、dreamweaver;6、visualstudio;7、phpstorm;8、notepad等等。孔子说,“工欲善其...

  • 浅析Vue项目中怎么用Pinia状态管理工具

    浅析Vue项目中怎么用Pinia状态管理工具

    vue项目中怎么用pinia状态管理工具?下面本篇文章带大家聊聊vue项目中pinia状态管理工具的使用,希望对大家有所帮助!Pinia官网介绍说:Pinia是Vue的存储库,它允许您跨组件/页面共享状态。Vuex同样可以作为状态管理...

  • mpvue是什么

    mpvue是什么

    微信小程序推荐简洁的开发方式,通过多页面聚合完成轻量的产品功能。小程序以离线包方式下载到本地,通过微信客户端载入和启动,开发规范简洁,技术封装彻底,自成开发体系,有native和h5的影子,但又绝不雷同。mpvue是什么?mpvue...

  • 如何在Vue项目中使用路由实现页面刷新和缓存控制?

    如何在Vue项目中使用路由实现页面刷新和缓存控制?

    如何在vue项目中使用路由实现页面刷新和缓存控制?在Vue项目开发中,使用路由实现页面刷新和缓存控制是非常常见的需求。本文将介绍如何在Vue项目中使用路由来实现页面刷新和缓存控制,并给出相应的代码示例。路由配置首先,在Vue项目中需要使用v...

  • 比较流行的Java工作流框架:5个最佳选项

    比较流行的Java工作流框架:5个最佳选项

    选择合适的Java工作流框架:比较常用的5个选择简介:在现代软件开发中,工作流程的管理是一个至关重要的方面。Java工作流框架是一种专门用于定义和执行工作流程的软件工具。它们可以帮助开发人员简化工作流程的开发和管理,提高效率和可靠性。本文将...

  • Vue-cli脚手架工具使用及项目配置说明

    Vue-cli脚手架工具使用及项目配置说明

    vue-cli脚手架工具使用及项目配置说明随着前端技术的不断发展,前端框架也越来越受到开发者的关注。Vue.js作为前端框架的佼佼者,已经被广泛应用于各种Web应用的开发中。Vue-cli是Vue.js官方提供的一个基于命令行的脚...

  • asp开发工具有哪些

    asp开发工具有哪些

    asp开发工具有visualstudio、dreamweaver、frontpage、editplus、ultraedit、sqlservermanagementstudio、radstudio、delphi、asp.net和or...

  • 周排行
  • 月排行
  • 年排行

精彩推荐