# 常见问题

# 环境安装

# MAC系统安装依赖后,执行yarn serve启动时报错 env: node\r: No such file or directory

  • 如图所示
  • 解决步骤如下:
  1. node版本要对,运行命令的时候如果报环境不兼容有environment红色警告。注意查看node版本要v14开头的,去node官网下载文件格式为.pgk的node环境安装文件,建议安装v14.19.2版本;
  2. 核对.npmrc和.yarnrc文件的私库地址,若无内网环境则切换成外网私库地址http://210.12.198.156:9036/repository/yx-npm-group/
  3. 删除yarn.lock相关文件;
  4. 删除node_modules文件夹;
  5. 运行npm install,安装依赖;
  6. npm run serve或者yarn serve;
  7. 如果有提示报错Please run npm config fix to repair your configuration.则运行 npm config fix 修复即可

# 沉浸式状态栏

  1. 什么是状态栏
  • 是指手机屏幕最顶上,显示中国移动、安全卫士、电量、网速等等,在手机的顶部。下拉就会出现通知栏。
  1. 沉浸式状态栏
  • 简单来说就是状态栏会根据手机内容适应性变色,使软件和系统本身更加融为一体,大大提升了用户体验,如上图,手机状态栏部分背景颜色与页面内容部分颜色一致。
  1. 实现方案(H5实现)
  • 标题栏延伸到状态栏,将原生外壳自带的导航栏设置为不显示,若所有页面都不需要原生导航栏,可在每个模块的入口页面src\modules\模块名\App.vue中设置,若仅是部分页面不需要原生导航栏,则在对应页面中按需设置。setTitleVisible点击查看API文档

   this.$app.setTitleVisible(false);

  • 此时,若标题栏的背景颜色为深色,手机系统状态栏的字色和图标颜色也为深色,会导致状态栏上的内容比如时间,电量等等不清楚,此时可通过setStatusBarStyle点击查看API文档方法设置顶部状态栏样式。

this.$app.setStatusBarStyle('light'); // 将状态栏字体、图标设置为白色

  • 当标题栏延伸至状态栏后,可能会导致标题栏内容遮挡手机系统状态栏的时间文字,信号网络图标等,此时可使用getSafeAreaInsets查看API文档l获取手机安全区域信息,安全区域信息中包含手机顶部状态栏高度,通过设置页面顶部paddingmargin来预留手机系统状态栏的高度。

   this.$app.getSafeAreaInsets().then(res => {
      console.log('app/getSafeAreaInsets===', JSON.stringify(res));
   })

# License更新 (3.4.1及3.4.1以下版本)

# License过期后,无法启动项目工程,需要申请新的license

  1. 新一代移动平台V3前端框架(基于vant-ui、跨模块)解决方案:

第一步:把package.json文件下'yump-cli'依赖版本更改成1.2.1-beta.b

第二步:在工程下增加yump.lic文件,文件内容为新申请的lisence

第三步:重新安装依赖

运行如下命令:

yarn remove yump-cli
yarn add yump-cli@1.2.1-beta.b
Last Updated: 7/19/2023, 5:56:59 PM