我有一個基於NodeJS的模塊化應用程序。 應用程序的結構看起來像節點js將模塊化代碼結構中的單個文件縮小並連接起來
- server.js
- 控制器
- controller1.js
- controller2.js
- DAO
- dao1.js 個
- dao2.js
- node_modules
現在我要來縮小和串聯整個項目到一個文件中。我面臨的挑戰是每個控制器和dao文件都使用「require」(相對路徑)來包含節點模塊
有沒有簡單的方法可以實現這一點?
編輯
嘗試的WebPack模塊
我webpack.config.js看起來像
var webpack = require('webpack');
var path = require('path');
var fs = require('fs');
var nodeModules = {};
fs.readdirSync(path.resolve(__dirname, 'node_modules'))
.filter(x => ['.bin'].indexOf(x) === -1)
.forEach(mod => { nodeModules[mod] = `commonjs ${mod}`; });
module.exports = {
name: 'server',
target: 'node',
entry: './server.js',
output: {
path: path.join(__dirname, 'build'),
filename: 'bundle.js'
},
externals: nodeModules,
module: {
loader: [
{
test: /\.json$/, loader: 'json-loader'
}
]
}
}
這是給這個錯誤:
ERROR in ./~/npm/~/npm-registry-client/test/unpublish-scoped.js Module not found: Error: Cannot resolve 'file' or 'directory' ./fixtures/@npm/np m-registry-client/cache.json in D:\OTTAFW\node_modules\npm\node_modules\npm-regi stry-client\test
minify節點應用程序有什麼意義? – Niezborala
我想分享這個應用程序,並希望保持代碼很小的安全 –