本文目录一览:
- 1、怎样使用微信小程序的第三方js库?
- 2、重磅:微信小程序发布WeUI.js 官方视觉组件库!
- 3、微信小程序平台开发需要哪些技术
- 4、微信小程序是用什么技术实现的?
- 5、微信小程序 第三方插件的使用
- 6、写给Android开发者看的『微信小程序和Android开发的对比』
怎样使用微信小程序的第三方js库?
方法一:rpn.js:使用rpn.js实现eval函数功能
操作链接:网页链接
方法二:
(1)使用Underscore.js:操作链接:网页链接
(2)使用Immutable.js:操作链接:网页链接
(3)使用UUID、Base64、Chance:操作链接:网页链接
扩展微信小程序框架功能(1)——Promise
ES6 对 Promise 有了原生的支持,但微信开发者工具更新版本(0.11.112200)后, 移除了开发者工具对 ES6 中Promise 特性原生的支持, 需要引入第三方的 Promise 库。
扩展微信小程序框架功能(2)——Generator
Generator函数是ES6提供的一种异步编程解决方案,语法行为与传统函数完全不同。
扩展微信小程序框架功能(3)——函数功能增强
Underscore.js 和 Lodash 是最常用的JavaScript库。
扩展微信小程序框架功能(4)——Immutable.js
Immutable.js 是 Facebook 开发的不可变数据集合。Immutable
Data(不可变数据)一旦创建就不能被修改。通过使用Immutable
Data,可以更容易的处理缓存、回退、数据变化检测等问题,应用开发更简单。
扩展微信小程序框架功能(5)——Redux
Redux 是 JavaScript 状态容器,提供可预测化的状态管理。
扩展微信小程序框架功能(6)—日期时间
Moment.js是一个JavaScript的日期、时间处理工具类,其对于JavaScript的日期时间处理功能非常强悍和全面。可以用在浏览器环境中使用,也可以在Node.js中。
扩展微信小程序框架功能(7)——正则表达式
XRegExp 是一个开源的 JavaScript库,提供一个参数化、可扩展的支持各种浏览器的正则表达式的实现库,支持附加语法、标志以及方法。
扩展微信小程序框架功能(8)——Xml处理
x2js是一个 实现 XML 与 JavaScript 对象之间相互转换的工具库。
扩展微信小程序框架功能(9)——加解密
node-uuid可以快速地生成符合规范 的 UUID。js-base64可以实现Base64编码和解码。crypto-js可以非常方便地在 JavaScript 进行加解密。
扩展微信小程序框架功能(10)——测试辅助
Chance是一个 JavaScript 随机数生成工具。Mock.js可以生成随机数据,拦截 Ajax 请求。
方法三:moment
操作链接:网页链接
重磅:微信小程序发布WeUI.js 官方视觉组件库!
12月16日,微信正式发布了WeUI.js动态视觉组件库。WeUI是一套同微信原生视觉体验一致的基础样式库,由微信官方设计团队为微信内网页和微信小程序量身设计,可以让用户的使用感知更加统一。WeUI.js动态视觉组件库包含了button、cell、dialog、progress、toast、article、actionsheet、icon等各式元素。
一、weui.js是什么?
weui.js是WeUI的轻量级JS封装,不需要依赖其它库,GZIP后仅有9.0 KB。
二、weui.js包含哪些组件?
actionsheet
alert
confirm
dialog
form
gallery
loading
picker
searchbar
slider
tab
toast
toptips
uploader
三、使用方式:
Github:
详细文档:
四、微信团队为何在此时公布官方视觉组件库:
1、为了更像微信OS
微信团队和之前的轻应用平台相比,不是简单为了给开发者和用户之间提供一个平台连接、也不是只为了做一个流量入口平台那么简单,而是为了打造一个完美的微信OS生态。当年百度、UC等平台推出的轻应用,更多的只是起到了一个平台倒流和连接的作用,并没有对开发框架和设计规范进行过如此统一的规范和要求。现在看来,最好的生态,当然是类似苹果安卓OS那样,所有的应用具备统一的开发框架和接近OS生态的完美体验。
2、为了极致的用户体验
从小程序内测到公测已经过去了三个月,我们有理由相信微信团队已经接到了不少小程序开发者的审核需求,这其中最让微信团队头疼的应该就是开发设计规范不符合微信团队的要求,达不到微信团队想要的那种用户体验。微信官方进一步推出Weui就是为了让所有开发者提交的小程序都能够接近微信APP的体验效果,从而给微信用户带去最佳的用户体验,这也是未来小程序生态能否提高8亿用户使用热度和频率的一个重要指标。
3、倒逼第三方服务商转型
微信团队在早年推出公众号的时候曾经推出过“开发者模式”,当时,微信团队鼓励第三方公司利用微信公众号开放的接口进行各种微应用的开发,比如:微网站、微商城,微工具等各种应用。但是,微信团队早期并没有对这些接入应用的开发框架和设计规范进行统一的定义和严格要求,导致每一个服务接入商基本都是按照自己的开发框架和设计标准进行开发来设计,使得市面上看到的这些应用页面呈现五花八门,用户体验极其糟糕,这也就造成了早期的应用服务被用户的接受度过低,同时无法给企业带来实际价值的症结所在。随着微信小程序的出现,微信团队重塑统一的开发框架和设计规范,倒逼这些第三方服务机构重新定义自己的跟随策略,按照新的开发规范重新提供新的平台服务。或许,现有的微信第三方服务机构格局将被打破,第三方服务机构将面临新一轮的洗牌。
五、WeUI.js给小程序开发者带来了哪些好处?
1、使用Weui设计出来的小程序如同用户使用微信客户端一样的视觉效果,可以让小程序的体验感更强。
2、使用Weui设计小程序更够提高开发者的开发效率,降低开发者的开发成本,从而让开发者更快的开发出符合规范的小程序。
3、使用Weui设计小程序如同您雇佣一支国内顶尖的设计团队帮您打造一个接近完美的视觉框架。
六、微信小程序给前端设计领域带来了那些影响和推动:
1、全平台兼容
微信小程序重新定义了APP,使得一款应用能够在android、iphone以及windows
phone中都能运行,对于前端来说实现了“一次编译,到处运行”的理念。
2、前端开发思维的改变
设计理念需要从传统的PC思维需要转向到以移动为先的思维,这其中主要考虑的差异化在于屏幕尺寸、网络带宽、输入设备等几个方面的不同。同时很多之前可以用于iOS与Android的控件需要在小程序上重新调整和创新。
3、推动前端技术的发展
微信小程序以其简单的开发环境,使以Javascript和HTML5为主的前端技术成为真正的主流,越来越多的人开始接触前端开发,为前端技术的发展贡献力量。
4、前端投入成本的增加
原本一家传统企业的前端开发人员需要覆盖PC端、移动端、APP应用等各种平台,微信小程序的出现会导致未来的前端开发人员还需要涉及小程序的前端开发设计,这在一定程度增加了前端开发人员学习和工作成本,同时也会给企业带来更多的人才投入成本。
5、前端人才的竞争更加明显
微信小程序的诞生会吸引一大批后台开发、APP开发的程序猿们加入前端开发大军,进一步冲击现有的前端开发人员的的知识结构,加剧前端开发岗位的竞争格局,迫使一些低端且知识结构不全面的前端开发人员面临被淘汰或者失业的风险。
6、全栈工程师会越来越吃香
随着微信小程序的出现,既懂后台,又懂前端的人才会越来越受到企业的重视和拥抱,特别对于创业团队和互联网企业来说,一个拥有全局思维、熟悉各种技术的人才非常重要。身为技术人员,我们需要不断拥抱变化,不断get新技能,努力成为一个全栈工程师。
微信正式发布WeUI.js动态视觉组件库,这意味着,大家可以在小程序里面,直接使用在官方设计文档附录中的视觉组件(而不需要额外引入其他库)。微信团队真的是用心在打造小程序生态,笔者也是真的在用心给大家带来更多干货,这也是笔者第一时间给大家带来的解读。码字不易,如果本文对你和你身边的朋友有所启发,感谢转发,你的支持是我们码字员最大的动力。
微信小程序平台开发需要哪些技术
开发微信小程序需要用到以下技术:
1、wxml,小程序常用语言为wxml,wxml是微信但是你熟悉wxml之后会发现其实它的编程理念和HTML的网页编程比较类似。
2、wxss,wxss更趋向于CSS,wxss,其实主要的实现思想理念也和网页的开发技术差别不大,主要是一些标签的一些简单替换,大部分和原先的css、基本不误,都是通过同页面调用的方式实现的。
3、js,开发小程序还必须掌握js技术,如果html+css+js的基础打的好,再来学习一下微信小程序js,之后在前端开发上就没有什么问题了。
4、服务器语言,如果不是专业的后端开发者,可能后端有一定的难度其学习曲线较陡。但是,仍然建议开发者学习一下后端语言,至少需要了解大致的原因框架,能够看懂其代码逻辑,这样不仅可以很好地实现前后端的配合,也能够在小程序出现bug的时候使用。常见的有PHP、Java、Python、ASP等技术。
5、数据库语言,如果公司数据量不大,架构不复杂的话数据库语言相对来说是比较简单的,一般学会一些常用的命令以及常出现的问题就能够应付使用。常用的数据库有免费的MySQL、msSQL、MongoDB、Oracle等数据库。
微信小程序是用什么技术实现的?
一、微信小程序的wxml
具有基本的编程经验的工程师,只有与wxml接触后,您才会发现该语言的编程概念类似于html网页的编程技术。经过一番研究和开发,您会知道微信小程序的要求技术含量不高,只是更换了一些标签,例如
已替换为等待状态。即使您不太擅长前端,转用微信小程序的发展也将是一个很好的方向。
二、微信小程序的wxss
wxss是微信的CSS。微信用自己的开发语言wxss代替了Web编程中使用的css;实际上,主要的实现思想与Web开发技术基本相同,并且它只是对某些标签的简单替换,其中大部分是原始的CSS,基本上是正确的。它们都是通过调用同一页面来实现的,但是可以说,微信小程序比Web开发更简单,更方便。例如,只要写入index.wxml和index.wxss,它就位于两个文件中。这两个文件同时位于同一目录中,就像直接在网页上写CSS一样,这既简单又快速。
三、微信小程序的js
如果要开发微信小程序,您必须精通微信小程序的js。只要您具有html+css+js的良好基础,就可以全力学习微信小程序js,然后在前端进行开发。上面没有问题,但是微信js需要努力学习。您可以购买参考书或了解微信小程序的API,它们可以快速帮助您参与开发队列。
四、微信小程序的json
掌握了以上几点之后,您需要掌握json。简而言之,json是微信小程序的主要和次要接口。工程师可以通过json控制上下菜单栏,主要和辅助页面的显示顺序。但是,使用频率不高。它仅适用于基本小程序的框架,但这也需要学习,因为除显示类型外,每个前端操作都需要与后端匹配,因为如果要使其放大,则必须之所以简化,是因为修改代码后,在迷你程序中搜索到的版本就是启动后的版本,即我们提交微信评论后显示的版本。修改源代码后,需要将其提交给微信公众进行审核。平台小程序管理平台,用户只能在审核通过后才能看到您的修改,因此,为避免这种麻烦,您必须了解后端技术开发并与前端链接以与您进行交流。
实际上,小程序类似于H5表面,并提供了视图层描述语言。您需要掌握WXML和WXSS以及基于JavaScript的逻辑层框架。这里的wxml等同于html,而wxss等同于CSS。
微信小程序 第三方插件的使用
各种开发其实都是有插件的,之前我以为小程序没有,没想到后来又有了,昨天动手想集成两个插件试试,没想到一波三折,这里记录一下我踩的坑
1、在微信公众平台后台,登录,设置-第三方服务-添加插件。这里以添加"极点日历"为例
注意最多只能添加5个哦
2、搜索你要的插件,并添加
添加成功后,就可以在插件管理下面看到你添加的插件了
3、在app.json中添加插件
这里的插件名可以自己随意取
这里以tx-map为例,参考它的文档
在app.json中添加相关信息
而provider即AppID,version即版本号
在项目中具体怎么使用,要看开发文档,而开发文档我发现有些插件有,有些插件并没有,反正自己多查查吧
4、在目标页面的json文件里引用该插件
注意这里的tx-map即在app.json取的那个名字,而map-route也可以自己取,这里取啥,到时候wxml里用的组件就是这个名字
5、在目标页面的wxml文件里使用该插件
如果要使用插件的 js 接口的话,在js里,使用requirePlugin(在app.json里命名的插件的名字),就能获得插件对象,比如:
6、查看效果
这个你可以尝试调整你的调试基础库版本,我之前是1.9.1,调整到2.1.1就好了。
这个真心没搞懂,因为这个错误是看心情出现的,一会儿好一会儿不好的,有点不稳定的样子,据说是降低调试基础库版本
这个也是看心情出现的(目前仍然是懵逼脸,不晓得是我错了,还是插件有问题)
写给Android开发者看的『微信小程序和Android开发的对比』
微信小程序近期可谓是动作频出,仅最近新增的能力就有:
种种迹象表明,微信对小程序的期望值是很大,所以在它推出的几个月效果没到达预期的情况下,之前的很多『克制』也就逐渐变成『放肆』了 —— 不过不管小程序以后的发展到底怎样,对我们开发者来发,多了解一些总是没有坏处的。
他山之石,可以攻玉。
对于是技术人来说,多了解一些不同的技术、不同的开发模式、不同的架构思想,提高技术『广度』,对于自己的成长是十分必要的。
所以,本文就是从一个 Android 开发者的角度,从项目工程方便切入,来分析一下『微信小程序』跟『Android App』开发上的一些异同。
『微信小程序』开发是一个相对较新的技术,希望通过本文,能让你对它多一些了解。
因为内容是从Android开发的角度来谈的,所以我假设你已经对 Android 开发比较熟悉了。并且对微信小程序的开发也比较感兴趣,如果要是再能有些 javascript、css 的基础的话那就更好了!
Android 开发我们已经比较熟悉——
作为对比,进行微信小程序开发所用的语言是这些——
wxml (WeiXin Markup Language) 基本约等于是 xml。微信之所以没有直接使用 xml ,可能是为了以后扩展方便一些(野心很大)。
同理, wxss (WeiXin Style Sheets) 基本约等于是 css。也是微信扩展了一些功能,比如统一的尺寸单位 rpx 。
对于 Android 来说,对于页面的描述基本上在 xml 中定义的,比如:
这是一个简单的典型的示例,这个文件就是描述了两部分内容:
some.wxss:
很明显可以看出:wxml 是负责了 页面结构 的展示;而 wxss 则负责了对 页面样式 的定义。
这种把结构和样式分离的做法,其实是延续了网页开发中的习惯(html + css)。
这样做的好处起码有两个:
——看起来还是挺简单的结构:
这三个文件用以描述小程序 app 相关的内容,他们的命名是固定这样的,位置也固定是在根目录下。
app.js 基本相当于 Android 中的 Application 类,文件中主要是有一个 App() 函数,来进行小程序的初始化操作。
app.json 的作用跟 Android 中的 AndroidMainifest.xml 文件很相似 —— 都是静态化的配置文件。
app.wxss 定义全局的样式 —— 其定义的样式会作用于每个页面。比如在 app.wxss 中加入:
就可以给所有的 text 控件添加 5px 的 padding 。
当然,页面本身的 xxPage.wxss 可以定义局部样式来覆盖全局样式。
根目录下的 utils 文件夹中有一个 util.js 文件,这个故名思意,是类似于 Java 中的一些工具类的存在。
utils 文件夹其实是一个非必须的结构,而它之所以出现在官方的 HelloWorld 工程中,是作为一个代表,表明了开发者在这里是可以自定义新的文件夹和结构的。微信小程序作为一个使用 js 来开发的平台,是可以使用许多第三方的 js 库的,对于这些第三方库,以及其他的图片资源等,都可以放到自定义的文件夹中。
pages 文件夹下包含两个子目录:index 和 logs ,两个目录的结构都是基本一样的,都是包含四个相同主名称的文件: xx.js、xx.wxml、xx.json、xx.wxss 这几个文件。
这样的一个典型结构表明它是一个小程序的页面,四个文件的作用分别是:
在视图的动态显示上,微信小程序使用了 数据绑定(data-binding) 的方式。
如果你之前使用过 AngularJS 或者 Vue.js 等这些流行的 js 框架,那么你肯定对 数据绑定 并不陌生。它是一种把一个控件的属性绑定到某个数据对象(view-model)的属性的方法,这样在改变数据对象属性的时候,所对应的控件属性也就会相应变化 —— 在开发中,这种方式会使得对 View 层的显示控制变得十分简单、自然。
基于此,软件工程的流行架构方式也在之前的 MVC 、 MVP 之外,又多了一个 —— MVVM(Model-View-ViewModel) 。
数据绑定 这种方式现在是如此的流行,以致于 Android 官方都出了一个 [Data Binding Library] ( ) 来支持数据绑定,但是由于成熟度等原因,目前还并没有成为主流,Android 中的主流视图显示方式,还是通过开发者手动给每个控件 set 数据。
—— 单从这一点上看,微信小程序的开发模式是比原生 Andorid 要『先进』一些的~ ?
小程序虽然是和前端 H5 页面一样是用 js 来开发,但是由于它最终运行的平台不再是浏览器,而是和 App 的表现几无二致,所以页面的生命周期也是和 App 差不多的。
一个小程序页面的典型生命周期如下:
对比一下 Android 的 Activity 生命周期 :
微信小程序的页面生命周期稍微简单一些,但主要的思想跟 Activity 生命周期基本是一致的。
小程序的官方 IDE 是微信自己出品 微信Web开发者工具 ,它内置了一个小程序的运行环境,本质上是基于 Chrome 内核的一个浏览器框架,算是一个模拟器了。
——它虽然跟 Android 的各种高大上的模拟器相比起来略显简陋,但是基本该有的功能也基本都有(断点、Log、网络监控等),而且由于是基于浏览器内核的页面 DOM 解析,所以运行的速度也是像浏览器打开网页一样流畅,不会像 Android 模拟器那样对系统资源要求很高。
另外,在绑定了开发者账号之后,也可以用手机进行真机调试来调试小程序,所以也能在上线前用不同的机器来进行充分的兼容性测试。
总体来说,小程序作为一个新的形态,从开发的角度,它可以算作是一个【Native开发】和【H5开发】的结合,它吸收了原生开发和 H5 开发的优点。对于前端开发人员和原生开发人员来说,都可以在微信小程序中找到许多熟悉的东西。再细节的许多点这里就不在赘述了,大家如果有兴趣,可以自己上手去体验一下。
综上,自然也就有两种人特别适合去做小程序的开发——H5的前端开发人员,以及之前的 Android/iOS 原生 App 开发者。
微信小程序的开发总体来说是很简单的。
—— 对于前端开发者来说,了解一下原生 App 的一些相关思想即可,这些工作其实只要读一遍小程序的开发者指南基本就差不多了。
—— 而对于原生开发者来说,只要稍微补一下 js 的相关知识(html/css),也基本就差不多可以上手去做了。如果你之前恰好已经有过一些 js 的使用经验,那就不用多说了,花半个小时看一下小程序的文档,直接上!
关于作者 :