import mockUtil from "/src/mock/base"; import _ from "lodash-es"; const options = { name: "FormLinkage", idGenerator: 0 }; const list = [ { province: 10000, city: 100003, county: 100004 }, { province: 10010, city: 100113, county: 100115 } ]; const tree = [ { id: 10000, label: "北京市", children: [ { id: 100003, label: "北京市辖区", children: [ { id: 100004, label: "东城区" }, { id: 100005, label: "西城区" } ] }, { id: 100103, label: "北京郊区", children: [ { id: 100104, label: "东郊" }, { id: 100105, label: "西郊" } ] } ] }, { id: 10010, label: "天津市", children: [ { id: 100013, label: "天津市辖区", children: [ { id: 100014, label: "天津湾" }, { id: 100015, label: "渤海湾" } ] }, { id: 100113, label: "天津市郊区", children: [ { id: 100114, label: "天津湾郊区" }, { id: 100115, label: "渤海湾郊区" } ] } ] } ]; options.list = list; options.copyTimes = 1000; const mock = mockUtil.buildMock(options); function omitChildren(orignalListt) { const list = []; orignalListt.forEach((item) => { list.push(_.omit(item, "children")); }); return list; } mock.push({ path: "/mock/linkage/province", method: "get", handle() { const list = omitChildren(tree); return { code: 0, msg: "success", data: list }; } }); mock.push({ path: "/mock/linkage/city", method: "get", handle(req) { const province = parseInt(req.params.province); const a = tree.filter((item) => { return item.id === province; }); const list = omitChildren(a[0].children); return { code: 0, msg: "success", data: list }; } }); mock.push({ path: "/mock/linkage/county", method: "get", handle(req) { const province = parseInt(req.params.province); const a = tree.filter((item) => { return item.id === province; }); const city = parseInt(req.params.city); const b = a[0].children.filter((item) => { return item.id === city; }); const list = omitChildren(b[0].children); return { code: 0, msg: "success", data: list }; } }); export default mock;