配置
ThinkJS 提供了靈活的配置,可以在不同的模塊和不同的項(xiàng)目環(huán)境下使用不同的配置,且這些配置在服務(wù)啟動時就已經(jīng)生效。
注意:不可將一個 http 請求中的私有值設(shè)置到配置中,這將會被下一個 http 設(shè)置的值給沖掉。
項(xiàng)目模塊
ThinkJS 默認(rèn)創(chuàng)建的項(xiàng)目是按模塊來劃分的,可以在每個模塊下定義不同的配置。其中 common 模塊下定義一些通用的配置,其他模塊下配置會繼承 common 下的配置。如:home 模塊下的最終配置是將 common 和 home 模塊下配置合并的結(jié)果。
項(xiàng)目環(huán)境
ThinkJS 默認(rèn)支持 3 種項(xiàng)目環(huán)境,可以根據(jù)不同的環(huán)境進(jìn)行配置,以滿足不同情況下的配置需要。
development 開發(fā)環(huán)境
testing 測試環(huán)境
production 線上環(huán)境
項(xiàng)目里也可以擴(kuò)展其他的環(huán)境,當(dāng)前使用哪種環(huán)境可以在 入口文件 中設(shè)置,設(shè)置 env值即可。
數(shù)據(jù)庫配置
一開始是這么配數(shù)據(jù)庫的:
//在通用模塊src/common/config/db.js
export default {
type: 'mysql',
adapter: {
mysql: {
host: '127.0.0.1', //域名
port: ' ', //端口
database: '', //數(shù)據(jù)庫
user: 'root', //用戶
password: ' ', //密碼
prefix: 'APP_', //前綴
encoding: 'utf8'
},
mongo: {
}
}
};
然后我想在模塊project下重新配數(shù)據(jù)庫的配置:
//這時候改配置要在src/apartment/config/config.js
export default {
//key: value
db:{
type: 'mysql',
adapter: {
mysql: {
prefix: 'project_',
}
}
}
};
project 模塊下的最終配置是將 common 和 project 模塊下配置合并的結(jié)果。也就是prefix最終是'project_',這樣我們在project模塊下改寫了通用的配置
怎么添加數(shù)據(jù)到數(shù)據(jù)庫?
首先我們可以用postman工具來模擬請求。
在postman上選擇post請求,地址是http://127.0.0.1:8360/project/apartment
參數(shù)如圖:

這時候給數(shù)據(jù)庫上是插入信息成功了。
接下來我們來看下數(shù)據(jù)庫,如圖:

總結(jié):我們請求url是http://127.0.0.1:8360/project/apartment
參數(shù):title="阿里山"&pic="這個是圖片的base64"
這時候請求過來找到project模塊下的控制器下的apartment.js文件,apartment.js然后會找到在數(shù)據(jù)庫對應(yīng)表project_apartment,在表面添加對應(yīng)的信息?。╬roject_是我們之前加的前綴,apartment代表是在控制器里面apartment.js文件,所以表和控制器是一一對應(yīng)的?。?/p>