小程序通用转译框架娜娜奇1.0.4发布

4次阅读

共计 1670 个字符,预计需要花费 5 分钟才能阅读完成。

娜娜奇在公司内部已经成功发布两个 APP 了,一个是支付宝小程序,一个是百度小程序,鉴于它已经好成熟了,我们决定提供更便捷的方式给普通用户使用,于是有了 nanachi-cli。
npm install nanachi-cli -g

yarn global add nanachi-cli
更详细的安装方式参见官网 https://rubylouvre.github.io/…
如果想体验一下我们的 APP 可以用手机百度或支付宝扫码查看。
百度小程序(需要使用手机百度 APP 搜索栏旁边的拍摄二维码打开)
支付宝小程序(需要使用支付宝 APP 扫码打开)

最后说一下本次更新情况
核心库

重构 createContext 的实现了,少了大概 40 行。
修复小程序在页面切换时触发 onUnload 事件时抛错的 BUG #609
着手研究异步渲染,这样可以减少因为用户乱用 setState 而造成的性能下降。

CLI

修复 async/await 的使用在头条小程序、快应用及 window 下的出错 #605
增加 jsx 模板编译测试。
增加 navigate*, canvas , stopPullDownRefresh 测试。
添加第四套 helloworld 的简单模板
对用户的 scss 文件改用 postcss 进行转译,用户不需要安装庞大的 node-sass。less 文件以后也用 postcss 进行转译,现在进度 60%。统一样式表的转译的好处时,我们在 AST 层面进行更细节的操作与在用法错误时给出更友善的提示信息。

快应用

对快应用 API 进行抹平:createCanvasContext, stopPullDownRefresh, storageSync。但目前 storageSync 还是有点问题,需要快应用方面提供一个获取 storage 的所有键值对的 API,我们才真正兼容 storageSync。
修复快应用下 async/await 语法。
修复 windows 下 npm 模块路径处理 bug。#605

修复 pdd 和 music 模板在快应用 bug。
修复 jsx 模版的 map 回调函数第二个参数缺失会报错问题。
修复 setNavigationBarTitle 接口。
修复存在滚动的情况下,PageWrapper 组件的 ux 文件出错的问题。

H5
目前只要集中在 API 的兼容上,路由器什么已经完成了。以后娜娜奇也能将小程序转换成一个 H5 SPA 网站。目前已经完成的 API 一览。
打电话
makePhoneCall
剪切板
getClipboardData
setClipboardData
图片
chooseImage
saveImageToPhotosAlbum
getImageInfo
previewImage

位置
getLocation
网络
request
uploadFile
downloadFile
滚动
pageScrollTo
数据缓存
setStorage
setStorageSync
getStorage
getStorageSync
removeStorage
removeStorageSync
clearStorage
clearStorageSync
getStorageInfo
getStorageInfoSync
系统信息
getSystemInfo
getSystemInfoSync
震动 (iOS 不支持)
vibrateLong
vibrateShort
ws
connectSocket
onSocketOpen
closeSocket
sendSocketMessage
onSocketMessage
onSocketError
onSocketClose
节点
createSelectorQuery 等
画布
createCanvasContext 等
交互
showModal
showToast
hideToast
showLoading
hideLoading
showActionSheet
导航
navigateTo
redirectTo
reLaunch
navigateBack
TabBar
switchTab
canIUse
最后欢迎试用娜娜奇,并给我们的项目加星 https://github.com/RubyLouvre…

正文完
 0