antvis / wx-f2

F2 的微信小程序
MIT License
1.28k stars 185 forks source link

微信更新7.0.12版本后,小程序内的f2图表显示异常 #260

Open hikingisme opened 4 years ago

hikingisme commented 4 years ago

微信7.0.12版本,在小程序内所有F2创建的图表显示异常,iOS系统表现为xy坐标都无法显示,Android系统表现为小程序闪退 微信小程序代码片段: https://developers.weixin.qq.com/s/lnTq93m57vgW (先执行npm install,然后在微信开发者工具构建npm)

13027619968 commented 4 years ago

我也遇到这个问题了,预览闪退 真机调试报错

hackeris commented 4 years ago

我也遇到同样的问题,并且在不使用wx-f2而直接使用f2时也是一样的现象

enya-yy commented 4 years ago

我也是这个问题。

DreamPWJ commented 4 years ago

@zengyue 不是官方bug,不是调试问题,是预览就不行 闪退 之前的wx-f2版本可以的啊,人家官方bug是调试不行,但是预览正常, 现在直接没发真机预览和体验了

comlejade commented 4 years ago

同样的问题,暂时换了ucharts,虽然丑点,但是凑合着能用,希望尽快解决

zengyue commented 4 years ago

试了下,微信最新版设置字体的时候,如果是多字体的话,ios会不显示, android下会闪退

ctx.font = "normal normal normal 12px Helvetica, sans-serif"; 问题代码

ctx.font = "normal normal normal 12px Helvetica"; 只能设置单字体

https://developers.weixin.qq.com/s/2CKpO5mO7qgA

fix 方式

// 在实例化前强制设置为单字体
F2.Global.fontFamily = 'sans-serif';
const chart = new F2.Chart(config);
...
zengyue commented 4 years ago

https://developers.weixin.qq.com/community/develop/doc/000220e7830e28e9921ad286e57000?fromCreate=0

DreamPWJ commented 4 years ago

设置F2.Global.fontFamily = 'sans-serif'; 依然不行,问题不是不显示,是闪退哦,真机测试一下就知道了@zengyue

zengyue commented 4 years ago

@DreamPWJ 是什么机型?

DreamPWJ commented 4 years ago

@DreamPWJ 是什么机型?

魅族16X android8.1.0 微信版本7.0.12 wx-f2版本2.1.0使用copy方式,F2版本3.6.1

Yinyihang857 commented 4 years ago

我也遇到这个问题了,预览闪退 真机调试报错

问题解决了吗兄弟,我也是同样的问题模拟器可以正常预览但是真机调试就一直闪退,没有任何错误

zengyue commented 4 years ago

微信的 canvas 不支持真机调试

zengyue commented 4 years ago

@DreamPWJ 我试了下,android 下就是这个问题导致的呀, 设置了 F2.Global.fontFamily = 'sans-serif'; 就好了呀

devecc commented 4 years ago

试了下,微信最新版设置字体的时候,如果是多字体的话,就会不显示

ctx.font = "normal normal normal 12px Helvetica, sans-serif"; 问题代码

ctx.font = "normal normal normal 12px Helvetica"; 只能设置单字体

https://developers.weixin.qq.com/s/2CKpO5mO7qgA

fix 方式

// 在实例化前强制设置为单字体
F2.Global.fontFamily = 'sans-serif';
const chart = new F2.Chart(config);
...

对的就是这个问题,设置之后 iOS 就能显示,Android 就不会闪退。若使用Mpvue 记得把方法写了Script 而不是 methods 里面。

DreamPWJ commented 4 years ago

@DreamPWJ 我试了下,android 下就是这个问题导致的呀, 设置了 F2.Global.fontFamily = 'sans-serif'; 就好了呀

我用的Taro开发的 拿到有区别?

Yrobot commented 4 years ago

试了下,微信最新版设置字体的时候,如果是多字体的话,ios会不显示, android下会闪退

ctx.font = "normal normal normal 12px Helvetica, sans-serif"; 问题代码

ctx.font = "normal normal normal 12px Helvetica"; 只能设置单字体

https://developers.weixin.qq.com/s/2CKpO5mO7qgA

fix 方式

// 在实例化前强制设置为单字体
F2.Global.fontFamily = 'sans-serif';
const chart = new F2.Chart(config);
...

小米mix3 本来预览+真机调试+体验版都有问题,现在根据大佬的方案,预览已经没问题了。赞

DestinyMajesty commented 4 years ago

试了下,微信最新版设置字体的时候,如果是多字体的话,ios会不显示, android下会闪退

ctx.font = "normal normal normal 12px Helvetica, sans-serif"; 问题代码

ctx.font = "normal normal normal 12px Helvetica"; 只能设置单字体

https://developers.weixin.qq.com/s/2CKpO5mO7qgA

fix 方式

// 在实例化前强制设置为单字体
F2.Global.fontFamily = 'sans-serif';
const chart = new F2.Chart(config);
...

我使用的taro框架,也发生的同样的错误。根据大佬的方案,IOS的坐标轴字体,guide里面的字体都能显示了。小米的几款机型也不会闪退了。太感谢了。

zwp1 commented 4 years ago

同样遇到开发工具上可以看到,真机调试报错,预览直接闪退, 加上了楼上说的 // 在实例化前强制设置为单字体 F2.Global.fontFamily = 'sans-serif'; const chart = new F2.Chart(config); 也还是一样

zwp1 commented 4 years ago

有人解决了吗

zzzlucas commented 4 years ago

试了下,微信最新版设置字体的时候,如果是多字体的话,ios会不显示, android下会闪退 ctx.font = "normal normal normal 12px Helvetica, sans-serif"; 问题代码ctx.font = "normal normal normal 12px Helvetica"; 只能设置单字体 https://developers.weixin.qq.com/s/2CKpO5mO7qgA

fix 方式

// 在实例化前强制设置为单字体
F2.Global.fontFamily = 'sans-serif';
const chart = new F2.Chart(config);
...

我使用的taro框架,也发生的同样的错误。根据大佬的方案,IOS的坐标轴字体,guide里面的字体都能显示了。小米的几款机型也不会闪退了。太感谢了。

我也想在taro里用使用这个wx-f2,但是编译都直接报错,你是在里面写一个微信原生组件,然后config里compile配置不编译吗

zzzlucas commented 4 years ago

@DreamPWJ 我试了下,android 下就是这个问题导致的呀, 设置了 F2.Global.fontFamily = 'sans-serif'; 就好了呀

我用的Taro开发的 拿到有区别?

我也想在taro里用使用这个wx-f2,但是编译都直接报错,你是在里面写一个微信原生组件,然后config里compile配置不编译吗