单独为某一个项目升级#这样做的好处是全局的 Taro 版本还是 1.x 的,多个项目间的依赖不冲突,其余项目依然可以用旧版本开发。 如果你的项目里没有安装 Taro CLI,你需要先装一个:
# 如果你使用 NPM
$ npm install --save-dev @tarojs/cli@2.x
# 如果你使用 Yarn
$ yarn add -D @tarojs/cli@2.x
echarts在小程序中滑动卡顿
由于微信小程序中,echarts的层级最高,无论设置多大层级也无法遮住echarts。而且小程序中好像只能用echarts吧。所以为了解决这个bug,我只能委屈求全了。打开ec-canvas.wxml文件,将touchStart、touchMove和touchEnd去掉了,直接删除就好啦。这三个事件应该是做缩放的吧,我们也没有这个缩放的需求。所以就去掉了。虽然暂时满足的需求,还是没有真正的解决问题。
原:
bindinit="init"
bindtouchstart="{{ ec.disableTouch ? '' : 'touchStart' }}"
bindtouchmove="{{ ec.disableTouch ? '' : 'touchMove' }}"
bindtouchend="{{ ec.disableTouch ? '' : 'touchEnd' }}"
现:
bindinit="init"
echarts在小程序中无法跟随页面滑动
在卡顿问题中能与echarts交互少的,可以直接使用图片代替cannvas,即在echarts渲染完毕后将它替换为一张图片。
如果我更新了数据,那么就重新放出echarts,等它渲染完毕后,再次替换为一张图片。
chart.on('finished', () =>{
getCurrentInstance().page.selectComponent(id).canvasToTempFilePath({
success: res =>{
console.log('res.tempFilePath====',res.tempFilePath)
this.setState({
echartImgSrc: res.tempFilePath
})
},
fail: res =>console.log('转换图片失败', res)
})
})
render:
this.state.echartImgSrc =='' ?
ref={this.refChart}
id={this.state.id}
canvas-id="mychart-area"
force-use-old-canvas="true"
ec={this.state.ec}
/>
:
<CoverImage src={this.state.echartImgSrc}></CoverImage>
公司产品试水小程序,做了几个独立功能模块的demo试下可行性,主要是这个框架和react语法基本相同,避免大家学习成本过高,以下记录几个容易粗心的点和坑,maybe很弱智。
由于日常用的axios请求参数的头是headers,复制粘贴大法引发了一个弱智bug,该bug会引发 content-type 设置失效,变成默认的 application/json 。
微信模板语言中,监听自定义组件事件的方法与监听基础组件事件的方法完全一致:
因此Taro中监听自定义组件事件的方法要写成
渲染成微信小程序模板语言时变成
以自定义导航为例:()
使用方法:
例:res.model在iPhone X模拟器输出"iPhone X",在真机输出 "iPhone X (GSM+CDMA)<iPhone10,3>" ,所以此处用indexOf而不能用 "==="
Taro.request()支持get和post请求,通过异步的方式进行回调。主要有3个回调方法
所以,对statusCode !== 200 的情况,都应在success回调方法中处理,可以写个拦截器,在微信原生方法wx.request()中存在相同情况。
npm提示某某包undefined,一个一个重新安超浪费时间,目前我的解决办法是退出编译后删掉渲染成微信小程序模板语言的dist文件夹和node_modules文件夹,然后重新运行 npm i 和 npm run dev:weapp
还遇到挺多问题。。想不起来了。。待更新吧。。。
下水了,后续问题记录口以看这里 https://www.jianshu.com/p/5a6fd7fdaf4f
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)