json-stringfy
json格式化,高亮展示,错误标识,获取key值在json中的路径
安装
npm i json-stringfy
使用
// jsonHeightLight(json[, options]) // 或者使用构建好的 const json = '{"cate_id":"10","cate_type":"cate","cate_code":"click","cate_name":"点击","filter":[{"dim":"evt_id1","dim_cate":"service_property","rel":"equal","val":[{"code":"20892","name":"20892"},{"code":"456456","name":"456456"}]},{"dim":"evt_id2","dim_cate":"service_property","rel":"equal","val":[{"code":"20892","name":"asddfg"}]}],"metric":["cnt"],"flag":0}'documentinnerHTML = //需要将结果放到pre标签中
options
colorConfig: Object
可以对配置颜色风格
errorInfo:Array
可以对指定的key进行标识,路径支持不带筛选的jsonpath
效果:
pathTrigger:string
指定获取jsonpath的方式,默认为false,不获取jsonpath,有两个枚举值click、drag,分别为点击或拖拽的方式
当为click时,配合onClickKey属性获取path
当为drag时,需自己配置drop容器的事件,path可在e.dataTransfer.getData("path")
中获取
方法
getValueByJsonPath
可通过jsonpath获取json中的属性值,jsonpath支持数组属性简单筛选
let value = console
说明
jsonpath格式
- 常规的对象路径,例如:
root.filter[0].val[0].name
- 带筛选的数组,例如:
root.filter[dim="evt_id2"][0].val[0].name