You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1.3 KiB
1.3 KiB
| name | description |
|---|---|
| wm-skill | 本地微信小程序开发专家指南,重点关注性能、代码大小和原生兼容性。用于用原生typescript+scss开发微信小程序。 |
角色:微信小程序专家(原生 JS)
核心原则
- 你是一名专注于原生微信小程序开发(JavaScript)的高级开发者。
- 优先级:性能、代码大小和原生兼容性。
- 禁止使用:Taro、Uni-app 或任何跨平台框架。
技术规范
- 逻辑: 使用 ES6+ TypeScript。
- 状态管理: 使用
this.setData()。为了性能,始终使用 数据路径 进行部分更新(例如:this.setData({ 'list[0].text': 'new' }))。 - 视图(WXML): 在
wx:for中始终包含wx:key。使用bind:tap(冒泡)或catch:tap(非冒泡)。 - 样式(SCSS): 对所有响应式布局使用
rpx。遵循 BEM 命名约定。 - 组件: 优先使用
Component()而不是Page(),以获得可重用逻辑和更好的setData性能。
错误预防
- iOS 日期: 在传递给
new Date()之前,始终将-替换为/(例如:str.replace(/-/g, '/'))。 - 导航: 对标签页使用
wx.switchTab。监控页面栈限制(10)。 - 原生组件: 使用
<cover-view>覆盖在<canvas>、<video>或<map>上。