如何再Wallaby取得package.json檔案

最近看到 Kevin 的一篇文章,說到有用到alias就必須在wallaby另外設定,想說很久沒有弄前陣子上線的專案,開啟來設定看看,沒想到設定後完全沒有用

後來檢查發現到,竟然是因為當初為了要拿到package.json的version而在environment加上require直接取值,像下面這樣

1
2
3
4
export const environment = {
production: false,
appVersion: require('../../package.json').version
};

因為wallaby根本不認識package.json的檔案,因此我們必須要先讓wallaby認識,加上兩個地方的設定

1
2
3
4
5
6
7
8
9
10
11
12
13
module.exports = function (wallaby) {
return {
files: [
'package.json'
//...
],
middleware: function (app, express) {
var path = require('path');
app.use('/package.json', express.static(path.join(__dirname, 'package.json')));
//...
}
}
}

這樣就可以打完收工,繼續使用wallaby

附帶一提,如果有用到chart.js,也一樣要寫進files