框架简介

Mpx 是滴滴开源的一款致力于提高小程序开发体验的增强型小程序框架,通过 Mpx ,我们能够最先进的 web 开发体验 (Vue + Webpack) 来开发生产性能深度优化的小程序,Mpx 具有以下一些优秀特性:

1.数据响应特性 (watch/computed)2.增强的模板语法(动态组件/样式绑定/类名绑定/内联事件函数/双向绑定等)3.深度性能优化(原生自定义组件/基于依赖收集和数据变化的 setData)4.Webpack 编译 ( npm/循环依赖/Babel/ESLint/css 预编译/代码优化等)5.单文件组件开发6.状态管理 (Vuex 规范/多实例/可合并)7.跨团队合作 (packages)8.逻辑复用能力 (mixins)9.脚手架支持10.小程序自身规范的完全支持11.支付宝小程序的支持

<template><!--动态样式--><view class="container" wx:style="{{dynamicStyle}}"><!--数据绑定--><view class="title">{{title}}</view><!--计算属性数据绑定--><view class="title">{{reversedTitle}}</view><view class="list"><!--循环渲染,动态类名,事件处理内联传参--><view wx:for="{{list}}" wx:key="id" class="list-item" wx:class="{{ {active:item.active} }}"bindtap="handleTap(index)"><view>{{item.content}}</view><!--循环内部双向数据绑定--><input type="text" wx:model="{{list[index].content}}"/></view></view><!--自定义组件获取实例,双向绑定,自定义双向绑定属性及事件--><custom-input wx:ref="ci" wx:model="{{customInfo}}" wx:model-prop="info" wx:model-event="change"/><!--动态组件,is传入组件名字符串,可使用的组件需要在json中注册,全局注册也生效--><component is="{{current}}"></component><!--显示/隐藏dom--><view class="bottom" wx:show="{{showBottom}}"><!--模板条件编译,__mpx_mode__为框架注入的环境变量,条件判断为false的模板不会生成到dist--><view wx:if="{{__mpx_mode__ === 'wx'}}">wx env</view><view wx:if="{{__mpx_mode__ === 'ali'}}">ali env</view></view></view>
</template><script>import { createPage } from '@mpxjs/core'createPage({data: {// 动态样式和类名也可以使用computed返回dynamicStyle: {fontSize: '16px',color: 'red'},title: 'hello world',list: [{content: '全军出击',id: 0,active: false},{content: '猥琐发育,别浪',id: 1,active: false}],customInfo: {title: 'test',content: 'test content'},current: 'com-a',showBottom: false},computed: {reversedTitle () {return this.title.split('').reverse().join('')}},watch: {title: {handler (val, oldVal) {console.log(val, oldVal)},immediate: true}},handleTap (index) {// 处理函数直接通过参数获取当前点击的index,清晰简洁this.list[index].active = !this.list[index].active},onReady () {setTimeout(() => {// 更新数据,同时关联的计算属性reversedTitle也会更新this.title = '你好,世界'// 此时动态组件会从com-a切换为com-bthis.current = 'com-b'}, 1000)}})
</script><script type="application/json">{"usingComponents": {"custom-input": "../components/custom-input","com-a": "../components/com-a","com-b": "../components/com-b"}}
</script><style lang="stylus">.containerposition absolutewidth 100%
</style>

安装使用

# 安装mpx命令行工具
npm i -g @mpxjs/cli# 初始化项目
mpx init <project-name># 进入项目目录
cd <project-name># 安装依赖
npm i# development
npm run watch# production
npm run build -p
Copy

简单示例

下面是使用mpx框架开发的外卖小程序页面,项目地址:github[1]

项目已经兼容微信小程序,支付宝小程序,web页面。项目包含两个页面,一个是首页点餐页面,一个是商品详情页面。主要内容是动态组件component-is 特性,watch,computed,创建 store 容器管理状态,等 mpx 增强的 API。

使用感受

在使用mpx能感受到像拥有vue语法一样的特性,包括文件的结构,一些增强的API语法和响应式数据。框架是基于微信语法可以直接转换成其他类型的小程序。所以只要会微信原生小程序开发就能直接上手了。

mpx是如何跨端的呢?它可以把微信的指令转换为其他小程序的指令,如果遇到跨端之间无法兼容的属性怎么办?这个时候我们需要添加环境判断,来针对指定的端进行语法输出。如果是不做跨端小程序只做微信小程序可以用吗?其实也是可以使用,因为增强的API可以带来更好的开发体验,比如经常使用的watch,computed特性。

References

[1] github: https://github.com/wuxianqiang/mpx-app

使用mpx开发外卖小程序相关推荐

  1. 使用mpx开发外卖小程序完整教程(附源码)

    框架简介 Mpx 是滴滴开源的一款致力于提高小程序开发体验的增强型小程序框架,通过 Mpx ,我们能够最先进的 web 开发体验 (Vue + Webpack) 来开发生产性能深度优化的小程序,Mpx ...

  2. 使用滴滴mpx 开发一个小程序组件

    前文 准备工具 webstorm ide npm i @mpxjs/col 小程序中 组件和页面分的很明确, mpx中一样 createComponent 创建一个组件 createPage 创建一个 ...

  3. 打造私域流量,外卖小程序是最好的选择

    人的天性就是懒! 而且人会越来越懒! 所以外卖是个充满了人性的服务. 而这样的服务一出现 立刻对接上人类被压抑了几千年的外卖需求. 一.如火如荼的餐饮数字化营销 就像被压抑太久的弹簧突然打开,外卖平台 ...

  4. 校园外卖小程序开发功能

    在很多学校,不少学生甚至于老师都是比较喜欢点外卖,所以开发校园外卖小程序就成为了比较受欢迎的热门项目. 校园外卖小程序开发基本功能 1.在线点餐,用户登录小程序即可选择自己喜欢的美食下单购买. 2.美 ...

  5. 微信小程序订餐系统需要服务器吗,微信小程序订餐系统怎么开发 怎么创建微信外卖小程序...

    原标题:微信小程序订餐系统怎么开发 怎么创建微信外卖小程序 过硬(10guoying.com)6月4日 观察:网上订餐的新消费方式如今在我们日常生活中已经十分常见,人们不仅可以在饿了么.美团等的外卖平 ...

  6. 微信外卖小程序 怎么计算与客户的距离_外卖订单少收益低?开发一个小程序皆可以提解决...

    外卖是大部分上班族解决吃饭问题的不二之选,因此近几年来外卖行业发展的如火如荼.一些商家赚了个"盆满体满",一些商家却遭遇订单数量少.收益低等问题.因此这些商家都非常想知道,怎么做才 ...

  7. 自己开发微信外卖小程序(记录)

    描述 自己准备开发一套微信外卖小程序,包含微信小程序用户端,商家接单小程序,商家管理平台PC端 功能分析图 后续会放上数据库设计图

  8. 餐饮点餐外卖小程序软件开发

    餐饮点餐外卖小程序是一种基于微信平台的,提供在线点餐.外卖配送等服务的应用程序.以下是可能有助于餐饮点餐外卖小程序软件开发的功能:     商品展示:提供菜品分类.搜索.详情等功能,让用户可以方便快捷 ...

  9. mpvue实战开发美团外卖小程序

    mpvue-meituan mpvue-meituan 是一款使用mpvue开发的实战小程序项目,完全仿制美团官方外卖点餐小程序开发而成,项目的框架结构完全按照企业开发架构搭建而成.结合了原生小程序的 ...

最新文章

  1. python 重载_python模块重载的五种方法
  2. 不利于网站优化的操作有哪些?
  3. java 如何知道对象是否被修改过_Java 并发编程:AQS 的原子性如何保证
  4. flask web开发的相关博文学习
  5. OSPF通过MPLS ×××
  6. Android基础类之BaseAdapter
  7. 输入ip地址无法访问计算机,即使是地址栏输入IP地址也没法访问其他计算机!!
  8. 全国产化 飞腾 vpx板卡
  9. stm32控制步进电机程序
  10. ST Visual Programmer(STVP)给STM8系列芯片烧录程序方法
  11. 只需要10秒,使用PPT给证件照换底色
  12. 小白笔记——异常处理基础
  13. android 红外驱动,Android内核驱动-红外驱动IR
  14. 在html中加动画效果,教你如何在网页上用H5实现动画效果
  15. IBM技术论坛:使用 Cobertura 和反射机制提高单元测试中的代码覆盖率
  16. 实战智能推荐系统(5)-- 推荐系统评价指标
  17. Bugzilla使用说明
  18. POJ2228 Naptime 【例题精讲】
  19. v-md-editor详解(MarkDown编辑器组件)
  20. Oracle SQL的多表查询 看这一篇文章就够了~

热门文章

  1. 华为云ModelArts 3.0助力行业AI高效落地
  2. 腾讯云大数据团队主导Apache社区新一代分布式存储系统Ozone 1.0.0发布
  3. “编程太差,那你别搞开发了!”基础差的程序员,你不知道有多难!!
  4. 一年多的远程办公带给我的感悟
  5. 微软想让所有人都成为开发者?
  6. 老码农:我为什么建议程序员尽早进入大厂?
  7. 吃亏的程序员,如何拿到 9 个月的年终奖?
  8. 红黑树真的没你想的那么难!
  9. 腾讯回应“二选一”;微信内测更新;特斯拉车祸再致命 | CSDN极客头条
  10. 被全球 iPhone 用户讨伐 49 天后,苹果终于为 iOS 带来手动关闭降频功能!