Hlxuan的开放文档Hlxuan的开放文档
首页
  • 首页
  • i朗月

    • 小程序端
    • App端(Beta)
    • 规则中心
    • 帮助中心
    • 更新日志
  • 朗月传媒工作室

    • 小程序端
    • App端(Beta)
    • 规则中心
    • 更新日志
  • 微信小程序

    • 隐私授权弹窗
  • 微信公众号

    • 首页
    • 发表内容不显示在公众号主页
    • 升级为发表功能
    • 自定义菜单篇
    • 扫码授权提示没有账号?
    • 页面模板常见问题
  • 微信小程序

    • 首页
    • 文字跑上面去了?
    • 下发统一消息接口
    • 头像昵称获取
    • 录制回放
  • 微信开放社区
  • GitHub
  • Gitee
  • npm
新媒体平台
支持作者
首页
  • 首页
  • i朗月

    • 小程序端
    • App端(Beta)
    • 规则中心
    • 帮助中心
    • 更新日志
  • 朗月传媒工作室

    • 小程序端
    • App端(Beta)
    • 规则中心
    • 更新日志
  • 微信小程序

    • 隐私授权弹窗
  • 微信公众号

    • 首页
    • 发表内容不显示在公众号主页
    • 升级为发表功能
    • 自定义菜单篇
    • 扫码授权提示没有账号?
    • 页面模板常见问题
  • 微信小程序

    • 首页
    • 文字跑上面去了?
    • 下发统一消息接口
    • 头像昵称获取
    • 录制回放
  • 微信开放社区
  • GitHub
  • Gitee
  • npm
新媒体平台
支持作者
  • 微信小程序开发经验
  • 「小程序下发统一消息接口」收回后,如何适配?
  • 小程序用户头像昵称获取
  • 录制回放

    • 「录制回放征文」说好的去体验,这就来了~
    • 「录制回放征文」录制回放问题答疑
  • 开发者工具

    • 为什么最近新建项目/代码片段和以前不一样?
    • 「干货」新建项目/代码片段为什么原生导航栏不见了?页面也无法滚动了?

为什么最近新建项目/代码片段和以前不一样? 干货

前言

最近应该会有不少同学在使用微信开发者工具开发小程序遇到一些问题:

  • 新建项目/代码片段自带了components文件夹?

  • 导航栏怎么不见了?

  • 文字怎么都跑到状态栏去了

    ......

这是模板更新了:

  1. 目前新建项目/代码片段默认会包含一个名为components文件夹(这个文件夹一般用于存放封装好的自定义组件),里面会自带一个自定义的导航栏组件navigation-bar。

  2. app.json全局配置默认配置了自定义导航栏:

{
  "window": {
    "navigationStyle": "custom", // 自定义导航栏
    "navigationBarTextStyle": "black"
  }
}

因为配置了自定义导航栏,所以原生导航栏就不见了,元素就从顶部状态栏开始渲染。

  1. app.json全局配置中开启了Skyline 渲染引擎(目前新建代码片段会默认开启Skyline 渲染引擎和全局配置自定义导航栏):
{
  "renderer": "skyline", // 开启了Skyline渲染引擎
  "rendererOptions": {
    "skyline": {
      "defaultDisplayBlock": true,
      "disableABTest": true,
      "sdkVersionBegin": "3.0.0",
      "sdkVersionEnd": "15.255.255"
    }
  },
  "componentFramework": "glass-easel"
}

因为目前 Skyline渲染引擎 不支持原生导航栏,所以原生导航栏就不见了,元素就从顶部状态栏开始渲染。


解决方案

1、学习使用新的模板

自定义导航栏

你可以使用模板自带的「自定义导航栏」代替「原生导航栏」,自定义导航栏的文档可参考:https://wechat-miniprogram.github.io/weui/docs/navigation.html

页面滚动

如果你的项目开启了Skyline 渲染引擎(即配置"renderer": "skyline"),目前页面是不支持全局滚动的,需要滚动的区域可使用scroll-view组件实现。

Skyline常见兼容问题可参考官方文档:https://developers.weixin.qq.com/miniprogram/dev/framework/runtime/skyline/migration/compatibility.html

2、自行修改模板

如果你想像之前的那样,使用原生导航栏,可以把app.json文件里面的"renderer": "skyline"(如有)和"navigationStyle": "custom" 删掉,保存重新编译下项目就可以了。

导航栏颜色

修改后,若发现原生导航栏变黑色了,这个是因为原生导航栏默认就是黑色的。

之前的模板会全局配置好导航栏背景颜色为#fff(白色),导航栏标题内容为Weixin。现在模板没有配置这两个属性了,导航栏就使用默认值#000000(黑色)了,同时也没有标题文字内容。

参考文档配置下就好了:

  • 全局配置(app.json):https://developers.weixin.qq.com/miniprogram/dev/reference/configuration/app.html#window
  • 页面配置(page.json):https://developers.weixin.qq.com/miniprogram/dev/reference/configuration/page.html

3、下载旧模板

如果你觉得第二步修改有点麻烦,你可以前往我的 GitHub下载我放上去的模板,导入到微信开发者工具使用就好了。

本文发表平台
  • 原创 微信小程序开发|为什么最近新建项目/代码片段和以前不一样? - 公众号:黄朗轩 [发表日期:2023-12-05]
上次更新:
贡献者: Hlxuan
下一页
「干货」新建项目/代码片段为什么原生导航栏不见了?页面也无法滚动了?