Loading...
Loading...
Overview and Migration Skills for Skyline Rendering Engine. Use this skill when learning about Skyline architecture, performance advantages, functional features, migration guides, and best practices. Suitable for scenarios where you are new to Skyline, evaluating migration costs, or need to understand the overall framework.
npx skill4agent add wechat-miniprogram/skyline-skills skyline-overview| Comparison Item | WebView | Skyline |
|---|---|---|
| Render Thread | Shared thread with JS logic | Independent render thread |
| Page Memory | One WebView per page | Shared rendering instance |
| First Screen Performance | Slow | 66%+ faster |
| Rasterization | Asynchronous chunking | Synchronous (no white screen) |
| Page Stack Limit | Maximum 10 layers | Unlimited (continuous Skyline pages) |
| Platform | Minimum Version | Base Library Version |
|---|---|---|
| Android | WeChat 8.0.40+ | 3.0.2+ |
| iOS | WeChat 8.0.40+ | 3.0.2+ |
| HarmonyOS | WeChat 1.0.10+ | 3.11.3+ |
| Developer Tools | Stable 1.06.2307260+ | - |
{
"renderer": "skyline",
"lazyCodeLoading": "requiredComponents",
"componentFramework": "glass-easel",
"rendererOptions": {
"skyline": {
"defaultDisplayBlock": true,
"defaultContentBox": true,
"tagNameStyleIsolation": "legacy",
"enableScrollViewAutoSize": true,
"keyframeStyleIsolation": "legacy"
}
}
}{
"navigationStyle": "custom",
"disableScroll": true
}⚠️ MUST: Skyline does not support native navigation bars. You must setand implement the navigation bar yourself.navigationStyle: custom
references/| I want to... | Refer to Document |
|---|---|
| Understand Skyline architecture and advantages | |
| Check supported features | |
| View performance comparison data | |
| Start migrating projects | |
| Handle compatibility issues | |
| Access release guidelines | |
| View changelogs | |
| Detect Skyline support | |
| Preload Skyline environment | |
rendererlazyCodeLoadingcomponentFrameworknavigationStyle: customscroll-view<text>wx.preloadSkylineView()Page.onPageScrollweb-viewrenderer: "skyline"lazyCodeLoading: "requiredComponents"componentFramework: "glass-easel"rendererOptions.skylinenavigationStyle: "custom"disableScroll: true<text>Page({
onLoad() {
// The page/component instance has a renderer property
console.log(this.renderer) // 'skyline' or 'webview'
}
})// Asynchronous method
wx.getSkylineInfo({
success(res) {
console.log(res.isSupported) // Whether Skyline is supported
console.log(res.version) // Skyline version number
}
})
// Synchronous method
const info = wx.getSkylineInfoSync()
console.log(info.isSupported, info.version)// In pages that may navigate to Skyline pages
Page({
onShow() {
// Delay call to avoid blocking current page
setTimeout(() => {
wx.preloadSkylineView()
}, 500)
}
})<!-- List items must be direct child nodes of scroll-view -->
<scroll-view type="list" scroll-y>
<view wx:for="{{list}}" wx:key="id">{{item.name}}</view>
</scroll-view>
<!-- Enable style sharing -->
<scroll-view type="list" scroll-y>
<view wx:for="{{list}}" wx:key="id" list-item>{{item.name}}</view>
</scroll-view>| Scenario | Recommended Skill | Description |
|---|---|---|
| Configuration Details | | Complete explanation of JSON configuration items |
| Style Development | | WXSS support and differences |
| Component Development | | Component usage guide |
| Animation Development | | Worklet animation system |
| Route Development | | Custom routing and transitions |
references/
├── api/
│ ├── getSkylineInfo.md
│ └── preloadSkylineView.md
├── changelog/
│ └── changelog.md
├── introduction/
│ ├── component-support.md
│ ├── features.md
│ └── overview.md
├── migration/
│ ├── best-practice.md
│ ├── compatibility.md
│ ├── getting-started.md
│ └── release.md
└── performance/
└── comparison.md