Skip to content

3.0.0

Compare
Choose a tag to compare
@kayo5994 kayo5994 released this 24 Apr 12:19
· 302 commits to master since this release

主要特性更新

  • 基于已经正式发布的 Gulp 4 进行重构,依赖于 Gulp 4 全新的任务系统 bach,带来更稳定以及更高效的工作流。由于 Gulp 4 中使用了全新的文件监听模块,以及利用 Gulp 4 原生的任务并行/串行机制,以及增量任务的特性,代替了第三方插件,新版本工作流的稳定性得到了大幅度的提升。
  • 集成了一套基于团队成员开发的 postcss-svg-sprite 完整 SVG Sprite 解决方案,可以方便地处理 SVG Sprite 的场景,详细介绍可以浏览内置工作流 - QMUI Web
  • 内置工作流支持自定义任务,开发者通过特定的格式建立任务文件,可以调用 QMUI Web 工作流中的公共配置和组件来编写基于自身项目场景的自定义任务。

其他优化

  • 正式移除了 Sass 工具方法中的浏览器兼容方法,包括 flex 属性在内的可能有兼容性问题的 CSS 属性都完全由 Autoprefixer 自动处理。
  • 基础组件不再保留在 QMUI 框架内,创建项目后完全归属于项目,使得基础组件更容易使用。
  • 更规范的样式代码处理。

新旧版本兼容问题

由于 QMUI Web 3.0.0 中对内置工作流和 Sass 组件/工具方法都作出了大量的结构上的修改,因此与旧版本并不兼容。

需要特别注意在旧版中,6个基础组件的样式代码由 UI_dev/qmui_web/qmui/componentUI_dev/project/widget 目录共同组成,其中 qmui/component 为核心基础样式,为了方便跟随 QMUI Web 框架迭代而保留在 QMUI 目录中,通过变量配置样式。现在这部分基础组件基本不再变动,为了方便组件使用,直接与 project/widget 目录中的组件代码合并,因此开发者升级 3.0.0 版本之前需要先合并 UI_dev/qmui_web/qmui/component 的代码到 UI_dev/project/widget

如何适配新版

  1. 升级 QMUI 源码(升级之前需要先把 UI_dev/qmui_web/qmui/component 的代码合并到 UI_dev/project/widget 中)。

  2. 全局卸载 gulp 并重新安装 gulp-cli 以适配本地的 Gulp 4:

# 首先全局卸载 gulp
npm uninstall gulp -g
# 全局安装 Gulp CLI
npm install gulpjs/gulp-cli -g
备注:新版 CLI 兼容基于 Gulp 3.X 的项目,因此不必担心其他基于 Gulp 3.X 的项目在更新 CLI 后无法运行。
  1. 把项目 UI_dev 下的 QMUI Web 配置文件 config.js 重命名为 qmui.config.js。

  2. 在项目 UI_dev/qmui_web 下执行一次 npm i,更新依赖包。

  3. _compatible.scss 中的 Sass 工具方法需要替换为原生 CSS 语法,内置工作流会自行处理兼容性问题。

  4. 如果有使用 QMUI Web Desktop,请升级至 2.0.0 或以上版本。

Bugfix

  • 修正独立图片目录新建子目录时内置工作流会停止工作的问题。