# 全局配置
可以通过ams.config配置各种全局的选项,会深度合并现有配置
在block内可以配置config字段,会跟ams.config的配置一起执行
ams.config({
resource: {
/**
* 全局请求参数拦截器,只能有一个,新配置的会覆盖旧的,返回处理过的请求参数
*/
requestInterceptor(options) {
options.headers = {
...options.headers,
"xsrf-token": "token"
}
return options
},
/**
* 全局请求结果拦截器,只能有一个,新配置的会覆盖旧的,返回空会中断后续处理,不处理的场景返回res
*/
responseInterceptor(response) {
if (response.data.code === -33) {
// 跳转登录并中断请求
ams.callAction('routerPush:/login')
return
}
return response
},
/**
* 全局请求异常拦截器,当xhr.onerror或者xhr.status !== 200的异常,会执行此拦截器
*/
errorInterceptor(err) {
return err
},
/**
* 根据不同code处理res
*/
codes: {
1001(response, options) {
return response
},
1002(response, options) {
return response
}
},
/**
* api相关的配置
*/
api: {
// 全局默认withCredentials,请求接口是否携带cookie
withCredentials: true,
// 全局默认contentType json | form
contentType: 'json',
// 全局成功code
successCode: 0
},
/**
* 设置field的默认配置
*/
defaultFieldConfig: {
text: {
props: {
clearable: true
},
default: '',
get: ams.configs.get,
set: ams.config.set,
view: ams.config.view,
equals: ams.config.equals
}
},
/**
* 设置block的默认配置
*/
defaultBlockConfig: {
form: {
props: {
ref: 'amsForm',
'label-width': '100px'
},
style: {
display: 'block'
}
}
},
/**
* 设置block中的props默认配置
* 0.33.0版本前存在,不推荐,请使用defaultBlockConfig
*/
defaultBlockProps: {
form: {
ref: 'amsForm',
'label-width': '100px'
}
},
/**
* 设置block中的data默认配置
* 0.33.0版本前存在,不推荐,请使用defaultBlockConfig
*/
defaultBlockDatas: {
router: {
title: '系统标题'
}
},
/**
* 区块的渲染方式,如某个自定义的customBlock类型想使用array的渲染方式,则配置为 customBlock: 'array'
*/
baseBlockType: {
list: 'list',
table: 'list',
customBlock: 'list' // 渲染customBLock时使用list的方法
},
/**
* 字段的渲染方式,如某个自定的customField想使用array的渲染方式,则配置为 customField: 'array'
*/
baseFieldType: {
array: 'array',
union: 'union',
customField: 'array' // 渲染customField时使用array的方法
}
}
})
← 编写定制物料 简化配置(默认配置) →