app/server.js
console.log(__dirname);
使用webpack + babel打包后, 生成的文件 build/server.bundle.js
function(__dirname) {
console.log(__dirname);
}).call(exports, "app")
node build/server.bundle.js时,
输出本应该是 前缀路径/build
, 然后输出的却是app。
晕·^· 如何使用webpack打包时使得__dirname不被破坏,或者是server.bundle.js运行时,获取server.bundle.js所在目录路径。
我觉得。。。server脚本可以不用webpack+babel吧,直接指定支持es6的node版本就可以了。实在是想兼容低版本node,又怕破坏路径,可以打包到同一个路径下。举个例子:
开发的时候是: app/server.es6.js
, 打包的目标路径是:app/server.js
同意1楼,webpack是用来打包客户端SPA的,拿来打包服务器端的js显示姿势不正确
webpack & browserify 都是给浏览器端打包用的。为了保护服务端的目录信息不被泄露,__dirname __filename 会有特殊处理
同一楼
配置里加上
node: { __dirname: true },
我做的这个server层不打包,node4.2+直接支持了 没必要大包,你可以参考Vue+webpack+node.js实现价格监测应用Ponitor——换个姿势爬虫!! https://cnodejs.org/topic/56fbfbdd93a6967159553a58
@xZGit 谢谢你,这个才是我所需要的。