Files
mes-ui-d2/docs/zh/learn-update/ice-1.2.6-to-1.2.7.md
liyang e00b33e93b no message
Former-commit-id: 0e93be260bc1178d924e26e5199f4fcc94916362 [formerly 0e93be260bc1178d924e26e5199f4fcc94916362 [formerly 0e93be260bc1178d924e26e5199f4fcc94916362 [formerly 0e93be260bc1178d924e26e5199f4fcc94916362 [formerly 15385874685c19ebd22ecca36ebd7f90505bfda1 [formerly 4dae5df78d44a8d07cf66b4809e8b4fc69540f51]]]]]
Former-commit-id: 4b50e05a8e7bbe0e5734d5b215b5cc47273764e4
Former-commit-id: 5d041de2a79996019c516da60dd7a3b516f00371
Former-commit-id: 3e9912e210e2ad6ab23ce8ea66580167f9f6679e [formerly fcce09417d80f26cd809a0760750ec53716595d2]
Former-commit-id: 87006380be242c9ceec158d09cd515a4984539e1
Former-commit-id: c34367f459345d0bf98b33ea8b63470d597c0b7b
Former-commit-id: f6a93e7447b92278b1086b1af1ae0fc311c128c9
Former-commit-id: 75a1918234120b40aa5cf19bdae8ae91157d468e
Former-commit-id: 461785b762e084757c80131c7374080fa68609a5
2018-08-31 16:23:47 +08:00

5.1 KiB

ICE 1.2.6 TO 1.2.7

D2Admin ICE 1.2.6 是基于 D2Admin 1.1.5 版本简化而来。

D2Admin ICE 1.2.7 是基于 D2Admin 1.2.0 版本简化而来。

D2Admin 1.1.5 - 1.2.0 之间修复了一些之前的错误,有一些小的功能改进,也有较大的升级。新功能介绍见 《D2Admin 8月更新: 高级数据持久化|标签页右键|模块化等》

::: tip 旧版文档 如果您暂时不想升级到新版本,旧版本文档会一直为您保留,文档地址 :::

如何升级

备份旧项目

首先将您的旧项目整体复制一份到其它位置,防止修改失败丢失文件。

下载新版本 D2Admin ICE

初始化成功后您应该有两个项目:

移动页面文件

如果您使用飞冰创建的页面,您的业务页面应该在 pages 目录下,例如下图中的 page6 文件夹:

将您的业务代码文件全部转移至新版项目的 pages 目录:

更新路由和菜单

将旧版本中的 menuConfig.js 和 routerConfig.js 移动到新项目中的同样位置,替换新版本初始化时的默认文件:

移动到新文件夹:

选择替换已有文件:

更新 package.json

由于您之前的项目中会使用一些区块,区块在创建在您的项目里时会自动在 package.json 文件中新增相关依赖,现在您需要手动将这些依赖添加到新的项目中:

::: tip lodash.uniqueid 这个插件不需要添加到新的项目中,新项目中全量引入了 lodash :::

重新安装依赖

启动新的项目

重新安装依赖完成后启动新的项目,即完成了旧项目的升级工作。

特殊情况

如果您修改了包含但不仅限于以下文件时,您需要注意将您以前的修改更新至新的项目:

  • pages 目录下的首页和登录页面
  • 公用样式和主题
  • HeaderAside 布局组件
  • store

store 更新说明

此版本对 store 文件夹下的设置进行了拆分:

旧版的 d2admin 模块所有代码写在了一个文件中:

导致这个模块看起来足够混乱以至于在修改某些功能时很不容易找到相关的代码。

新版的 D2Admin ICE 针对这部分做了优化,将这个模块根据功能进行了拆分:

这样在您需要修改某些功能时可以更快速地找到对应的代码位置。但是相应而来的是模块中的方法在调用时的方法都发生了变化,以登录为例:

旧版(示例):

<script>
import { mapActions } from 'vuex'
export default {
  methods: {
    ...mapActions([
      'd2adminLogin'
    ]),
    submit () {
      this.d2adminLogin({
        vm: this,
        username: '',
        password: ''
      })
    }
  }
}
</script>

新版(示例):

<script>
import { mapActions } from 'vuex'
export default {
  methods: {
    ...mapActions('d2admin/account', [
      'login'
    ]),
    submit () {
      this.login({
        vm: this,
        username: '',
        password: ''
      })
    }
  }
}
</script>

::: tip 规律 在调用 vuex D2Admin 系统模块时,无论是直接操作还是使用:

  • mapState
  • mapActions
  • mapMutations

都要注意现在的方法和数据都根据功能模块化了,如果您之前业务代码中使用了相关的数据和方法,请注意。 :::

数据持久化更新说明

旧版的数据持久化文档 VUEX 实用工具

新版的数据持久化更加强大,文档见 数据持久化

请在业务代码中注意将您使用的数据持久化方法升级。

需要帮助

交流群