#全局配置
MBA 在 mba/utils/Setting 中提供了一组全局默认值(GLOBAL),以及若干帮助函数用于覆盖默认行为。
#常用入口
TypeScript
import { GLOBAL, globalSetting, setGraphColor, PLACE, setStyle } from 'mba/utils/Setting'
#GLOBAL 常用字段
以下是最常用的一些配置项(完整列表以源码为准):
| 字段 | 作用 |
|---|---|
DARK_MODE | 默认是否暗色模式 |
ANIMATION_DURATION | 默认动画时长(CSR/DOM) |
ANIMATION_EASE | 默认动画曲线(CSR/DOM) |
TOOLTIP_HIDE_DELAY | 鼠标移出后延迟隐藏 tooltip(CSR/DOM) |
TOOLTIP_LIST_MODE | tooltip 排版模式(ll/lr) |
TOOLTIP_BGCOLOR | 是否启用 tooltip 背景色功能 |
GEO_CODE_FIELD / GEO_NAME_FIELD / GEO_CENTER_FIELD | Geo 数据字段名约定 |
GEO_PATH_URL | Geo 地图文件路径生成器(用于把 json 字段映射到真实 URL) |
#使用 globalSetting 覆盖默认值
TypeScript
import { globalSetting } from 'mba/utils/Setting'
globalSetting({
DARK_MODE: true,
ANIMATION_DURATION: 260,
TOOLTIP_HIDE_DELAY: 120,
})
#为单个图表类型配置默认颜色:setGraphColor
TypeScript
import { setGraphColor } from 'mba/utils/Setting'
// 不区分大小写;支持 `${graphName}` 或 `${graphName}-${graphType}`
setGraphColor('bar', ['#1677ff', '#52c41a', '#faad14'])
setGraphColor('bar-radius', ['#ff4d4f', '#1677ff'])
#用 setStyle 覆盖 SVG 样式位点
TypeScript
import { PLACE, setStyle } from 'mba/utils/Setting'
setStyle(PLACE.AXIS_LABEL, { fontSize: 12, fill: '#6b7280' })
setStyle(PLACE.LEGEND_SIMPLE_TEXT, { fontSize: 12 })
#Geo 地图路径:GEO_PATH_URL
Geo 相关图表会把 json 字段(例如 china、420000)转成实际请求的 URL。默认规则是:
china→/topo-v2/100000.json- 其它数字编码会被补齐/截断为 6 位 →
/topo-v2/<code>.json
你可以按自己的静态资源路径重写:
TypeScript
import { globalSetting } from 'mba/utils/Setting'
globalSetting({
GEO_PATH_URL: (path: string) => `/assets/topo/${path}.json`,
})
#注意事项
PREFIX会影响 SVG 内部 className 的生成;默认 CSS 文件以.v-为前缀,除非你提供完整的覆盖样式,否则不建议修改。- 全局配置适合做“默认值”,更推荐优先通过组件 props 做局部覆盖。