Skyline渲染引擎
<swiper> <swiper-item> <horizontal-drag-gesture-handler> <view></view> </horizontal-drag-gesture-handler> </swiper-item> </swiper> 上面这种写法,在模拟器中调试是OK的,内层的水平拖拽可以正常响应。但是真机调试时,内层拖拽不会响应,而是响应swiper的拖拽。
我想知道,web-view实际上是有个url的,那我看文档说可以替换成Skyline去渲染,那怎么把url转到Skyline?难道是要我在写一遍代码么?那不是和普通的wxml和wxss这种一样么?我既然能用普通的wxml和wxss去写,干嘛还要用Skyline?所以url怎么转换成Skyline?
注意就是原封不动的官方模板代码:js-skyline 基础模板 真机调试机型:小米13 [图片][图片]
skyline下面scroll-view的 flex-direction: row 失效? <scroll-view type="list" enhanced="true" show-scrollbar="false" enable-flex="true">
代码:https://github.com/sierraqin/hyacinth 页面:pages/proj853/index 位置:/pages/proj853/index.wxml ,第8行 此问题仅Skyline下存在 image组件显示svg图片时渲染模糊。最开始svg图片是以矢量形式渲染的,无论放大多少倍都极其清晰,但出现问题后,svg疑似是被转换为位图缩略图后被渲染,放大时,不会渲染放大的svg,而是渲染放大后的缩略图。 2024年1月时,svg图片正常显示。2月时,开始陆续有部分安卓用户反馈图片模糊,安卓微信客户端登录微信账号A真机调试时,模糊问题稳定复现,相同手机相同环境,登录微信账号B后问题消失无法复现,切换回之前的微信账号A登录后问题又可以稳定复现,切换到微信账号B后问题又无法复现(可能是在灰度???),此时开发者工具、iOS端均无法复现问题。至9月时,iOS、安卓、开发者工具均出现模糊问题。
我是做了一个组件创建Canvas 这一直获取不到Canvas 咋回事? wx.createSelectorQuery() .in(this) .select('#image-cropper')// 在 WXML 中填入的 id .fields({ node: true, size: true }) .exec((res) => { console.log(res,33333) // Canvas 对象 this.canvas= res[0].node // 渲染上下文 this.ctx = this.canvas.getContext('2d') this.canvas.width=this.data._canvas_width * this.data.export_scale this.canvas.height=this.data._canvas_height * this.data.export_scale this.data.PushImg=this.canvas.createImage() })
如果不配置skyline模式的话 第一次打开就能正常打开不报错。所以怀疑是skyline那里出问题了 报错内容如下: MiniProgramError undefined is not an object (evaluating 'this.waitingForHoverReset.then') TypeError: undefined is not an object (evaluating 'this.waitingForHoverReset.then') at _hoverClassChange (WARenderContext.js:1:225715) at hoverClass (WARenderContext.js:1:1133868) at callAttributeFilter (WAServiceMainContext.js:1:255480) at (WAServiceMainContext.js:1:274630) at (appservice.app.js:7146:4527) at o (WAServiceMainContext.js:1:281837) at createNativeNodeWithInit (WAServiceMainContext.js:1:259542) at createCommonElement (WAServiceMainContext.js:1:281981) at (WAServiceMainContext.js:1:276231) at b (appservice.app.js:7146:4379) at j (appservice.app.js:7146:2140) at handleChildrenCreation (WAServiceMainContext.js:1:275887) at handleChildrenCreationAndInsert (WAServiceMainContext.js:1:277968) at (WAServiceMainContext.js:1:276535) at c (appservice.app.js:7146:2184) at (WAServiceMainContext.js:1:279462) at handleChildrenCreation (WAServiceMainContext.js:1:275887) at handleChildrenCreationAndInsert (WAServiceMainContext.js:1:277968) at (WAServiceMainContext.js:1:279441) at diff (WAServiceMainContext.js:1:271714) at (WAServiceMainContext.js:1:279242) at b (appservice.app.js:7146:2208) at c (share/index.appservice.js:1:412) at handleChildrenUpdate (WAServiceMainContext.js:1:278113) at (WAServiceMainContext.js:1:278906) at a (share/index.appservice.js:1:464) at handleChildrenUpdate (WAServiceMainContext.js:1:278113) at update (WAServiceMainContext.js:1:275448) at updateValues (WAServiceMainContext.js:1:289065) at (WAServiceMainContext.js:1:297159) at applyDataUpdates (WAServiceMainContext.js:1:211619) at setData (WAServiceMainContext.js:1:304410) at (WASubContext.js:1:158100) at P (WASubContext.js:1:152880) at setData (WASubContext.js:1:158079) at (appservice.app.js:7214:73709) at <setTimeout callback function> at (WASubContext.js:1:110313) at (WASubContext.js:1:142858) at p (WAServiceMainContext.js:1:151705) at (WAServiceMainContext.js:1:139654) _onNativeTimer@ global code@
[图片][图片] 左图为webview模式,右图为skyline模式。宽度为是设置的max-width: 220px;
用自定义路由打开新页面,快速拖动就会卡死,简单布局的情况也会 [视频]
微信小程序开启了glass-easel,\n转义失效了
Snapshot支持截取live-pusher的画面吗?
Skyline 模式下 mobx-miniprogram-bindings 只能手工绑定吗?BehaviorWithStore绑定报错 import { createStoreBindings } from "mobx-miniprogram-bindings"; import { store as receiveds } from "./reservations"; const STORE_TYPES = { RECEIVED_RESERVATIONS: "ReceivedReservations", }; const STORE_CONFIGS = { [STORE_TYPES.RECEIVED_RESERVATIONS]: { store: receiveds, fields: ["receiveds"], actions: ["updatedReceived"], }, }; export const handleStores = (context, stores) => { return stores.map((store) => { const config = STORE_CONFIGS[store]; if (!config) { throw new Error(`Unknown store type: ${store}`); } return createStoreBindings(context, config); }); };
https://developers.weixin.qq.com/s/OhUmRlmK7nVE
事情是这样的,我在webview页面里有个样式 [图片] 效果本来是这样子的: [图片] 然后跳转到skyline页面里,就变成这个样子了,应该是white-space:pre; [图片] 求求了,这是我项目中最后一个skyline页面了, 如果再不能实现的话,我就只能忍痛全部退回到webview了。 (心累)极其舍不得丢弃snapshot组件,才一直保留这个skyline页面的。
使用 display: flex-reverse 搭配 padding 时,ios 下边距展示成了双倍的 android(正常) [图片] ios(异常): [图片]
复现步骤: 打开代码片段,然后手机扫码运行,此时tabbar正常展示分享当前页面给微信好友,然后关闭小程序(不用杀掉)从好友分享的卡片点进小程序,自定义tabbar未展示复现环境: ios 17.3.1wecchat lib 3.4.10补充: 需要是热启动:即点击分享卡片时,打开的是已运行的小程序,而非是重新冷启动
skyline开发的小程序,对某个页面配置 { "renderer": "webview", "navigationStyle": "custom", "pageOrientation": "landscape", "usingComponents": {} } 从主页进入该页面后,点击屏幕右侧的事件均没有响应
模拟器上效果上是可以的,到真机上就不行,有上面的问题,白屏,导致动画不连贯,所以效果很差,不知道有没有人遇到过?
请问一下大佬们,我就写了下面这一个很简单的demo,但是为啥吸顶不生效呢? <scroll-view class="scroll-area" scroll-y type="custom"> <sticky-section push-pinned-header="{{false}}"> <sticky-header> <view class="day-container">{{wedDay}},剩余:{{remain}}天</view> </sticky-header> <text> a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a</text> </sticky-section> </scroll-view>
// 创建性能观察者 const observer = wx.createPerformanceObserver((entryList) => { const entries = entryList.getEntries(); entries.forEach((entry) => { console.log('资源加载信息:', entry); }); }); // 观察资源加载类型的性能条目 observer.observe({ entryTypes: ['resource'] }); } 通过此段代码创建监听器,在页面访问图片链接,无法在entryList.getEntries()处获得resource类型数据
小程序示例
交互动画 tab
和swiper本身的事件冲突了吧