Former-commit-id: dfce7fbc9bca2067040e6e8c23b66a6c7aa83954 [formerly dfce7fbc9bca2067040e6e8c23b66a6c7aa83954 [formerly dfce7fbc9bca2067040e6e8c23b66a6c7aa83954 [formerly dfce7fbc9bca2067040e6e8c23b66a6c7aa83954 [formerly 0ca6fc401bc9eed429d63d2f325a51427e64efaf [formerly fc38bbe5b0872fe19fba8c2c1a18b012a1196dd1]]]]] Former-commit-id: f89ce864541c5bd3b5575fd5f004166f264ba979 Former-commit-id: 72c12de2fb73d8a611de1ab490a0350dc8d0854e Former-commit-id: 2c5855db32c4f9bd6443b4feafc36cc97f485c6a [formerly dec663903e8ed536195246c100e252139303a38c] Former-commit-id: 29d7df6bf67e26ba34eea97d7fa13780db34cb33 Former-commit-id: de5395cf09cc52ee68cc40cbb540df99144501d9 Former-commit-id: bf93df20659a08143ac052c4f71f3e8526087ffa Former-commit-id: b49da24340c8a064b15ab1a90bbb5e6070ecd611 Former-commit-id: 76337aae3c06b11a6cf4f6b836c3e8adab599f49
4.8 KiB
常见问题
本章总结收到的用户反馈问题,集中展示,方便后续用户自助解决问题
无法启动项目
首先建议您升级 node 版本 > 8,在以下环境测试可用
➜ ~ npm -v
5.6.0
➜ ~ node -v
v8.11.1
➜ ~ nrm -V
1.0.2
➜ ~ nrm ls
npm ---- https://registry.npmjs.org/
cnpm --- http://r.cnpmjs.org/
* taobao - https://registry.npm.taobao.org/
nj ----- https://registry.nodejitsu.com/
rednpm - http://registry.mirror.cqupt.edu.cn/
npmMirror https://skimdb.npmjs.com/registry/
edunpm - http://registry.enpmjs.org/
::: tip 推荐使用 nrm 管理 npm 源,不建议使用 cnpm :::
文档运行报错
这里目前还有一个小遗憾,d2admin 使用的 webpack 版本不能符合 vuepress 的要求,所以如果你想在本地启动文档站点的服务,需要按下述步骤
首先将 vuepress 安装到全局
npm i -g vuepress
启动服务
npm run doc:dev
::: tip 你可能会发现项目目录中有一个 deploy 文件夹,这个文件是为了方便发布和提交代码用的,通常你并不需要使用它 :::
删除页面右上角 github 链接
在 src/components/demo/d2-demo-page-cover/index.vue 中删除相关代码即可
兼容性
首先 vue.js 和 ElementUI 做不到兼容的,D2Admin 肯定也兼容不了,实测在 macOS 下 Chrome 和新版本的火狐浏览器以及 Safari 都正常使用,这类管理系统一般是内部使用,通常不必太纠结兼容低版本浏览器,如果你发现了显示的 bug,可以加 QQ 群反应,如果你可以修复这个 bug 使其在你的浏览器上显示正常,欢迎你的 pr。
删除项目里的 G2 图表库
出于为用户考虑,作者个人实现的图表集成方案肯定不如其它专门做这方面的开源产品(这是肯定的,客观来讲作者的个人水平和 v-charts 的团队水平不在一个等级),所以G2 图表库在 1.1.1 版本删除,后续版本换成 v-charts。如果你在开始使用 D2Admin 是在 1.1.0 以及之前,你的项目里应该有 G2 图表库,如果你不想保留,下面的向导将会指导你删除它
::: tip
下面的教程都是在 1.1.0 版本(行号为下载后没进行任何改动的行号)基础上
:::
- 删除相关路由
删除文件 src/router/index.js 中 34 ~ 53 行代码
{
path: '/demo/chart',
name: 'demo-chart',
meta,
redirect: { name: 'demo-chart-index' },
component: () => import('@/components/core/d2-layout-main'),
children: (pre => [
...
])('demo-chart-')
},
- 删除菜单
删除文件 src/menu/index.js 中 119 ~ 143 以及 240 和 256 行代码
// 路由菜单 图表
const demoChart = {
path: '/demo/chart',
title: '图表 G2',
icon: 'pie-chart',
children: (pre => [
...
])('/demo/chart/')
}
export const side = [
demoPlugins,
demoComponents,
demoElement,
demoChart // <- 注意这里
]
// 修改为
export const side = [
demoPlugins,
demoComponents,
demoElement
// 删除了 demoChart
]
export default [
{
path: '/index',
title: '首页'
},
{
path: '/demo',
title: '集成功能',
children: [
demoPlugins,
demoComponents,
demoElement,
demoChart, // <- 注意这里
{
title: '空菜单演示',
icon: 'folder-o',
children: [ ...
// 修改为
export default [
{
path: '/index',
title: '首页'
},
{
path: '/demo',
title: '集成功能',
children: [
demoPlugins,
demoComponents,
demoElement,
// 删除了 demoChart
{
title: '空菜单演示',
icon: 'folder-o',
children: [ ...
- 删除文件
-
删除
src/components/charts目录 -
删除
src/components/index.js中的相关内容(高亮部分)
// 核心组件
import './core/register'
// 非核心组件 只是在很多演示页面中用到的组件
import './demo/register'
// 图表组件
import './charts/register'
-
删除
src/mock/chart目录 -
删除
src/mock/register.js中的相关内容(高亮部分)
import Mock from 'mockjs'
import '@/mock/ajax-demo'
import '@/mock/login'
import '@/mock/chart/register.js'
// 设置全局延时 没有延时的话有时候会检测不到数据变化 建议保留
Mock.setup({
timeout: '300-600'
})
- 删除
src/pages/demo/chart目录
- 删除依赖
打开终端 cd 到项目文件夹,执行
npm remove @antv/data-set -S
npm remove @antv/g2 -S
项目里有未完成的代码
有些示例(比如 v-charts 和 ElementUI)是很方便就可以找到官网示例和文档的,这些插件和组件的示例在本项目中就可能处于未完成的状态,但是以后会完成