統一載入整個目錄中的 API

2022-06-25 09:54:10 字數 1384 閱讀 3964

背景:接手的專案已經有乙個 api 目錄以使用方式如下表示。

src/api:.

│ logs.js

│├─aiplatform

│ label.js

├─assist

│ assist.js

│├─base

│ region.js

│├─classify

│ ├─dialogue

│ │ chat.js

│ │ data.js

│ │

│ ├─label

│ │ index.js

│ │

│ └─mould

│ list.js

│ test.js

│├─common

│ common.js

│├─desk

│ notice.js

其中的 js 檔案內容示例:

import request from '@/router/axios';

export const getlist = (current, size, params) =>

})}export const remove = (ids) =>

})}

所有介面引用方式示例:

getlist(cnt).then( res => )

個人感覺之種方式不太間接,想逐步修改它們。

console.log(res) //

})在 api 目錄下建立 index.js 檔案,內容為:

import lodash from 'lodash'

const files = require.context('./', true, /\.js$/);

const apimaps = {}

files.keys().foreach(key =>

object.keys(obj).foreach(key => else

}resove(inres(res))

}).catch(err => )})}

})lodash.set(apimaps, path, objres)

})export default apimaps

在入口 main.js 中新增以下內容:

import api from '@/api'

vue.prototype.$api = api

然後就能在使用的地方通過this.$api.目錄.方法的形式呼叫介面了,不影響原來的呼叫方式。

Tiny示例 對整個目錄中的POM樹進行批量處理

原來我的pom中groupid是org.tinygroup,artifactid是對應的工程名,如parser。後出有乙個處理上的原因,而且便於進行分隔,還可以避免與別人的衝突,想把所有的artifactid前面增加個 org.tinygroup.字首,比如parser就變成org.tinygrou...

Tiny示例 對整個目錄中的POM樹進行批量處理

原來我的pom中groupid是org.tinygroup,artifactid是對應的工程名,如parser。後出有乙個處理上的原因,而且便於進行分隔,還可以避免與別人的衝突,想把所有的artifactid前面增加個 org.tinygroup.字首,比如parser就變成org.tinygrou...

spring中的統一異常處理

在具體的ssm專案開發中,由於controller層為處於請求處理的最頂層,再往上就是框架 的。因此,肯定需要在controller捕獲所有異常,並且做適當處理,返回給前端乙個友好的錯誤碼。不過,controller一多,我們發現每個controller裡都有大量重複的 冗餘的異常處理 很是囉嗦。能...