zeit-pkg是用于打包nodejs代码的工具。 zeit-pkg也支持require('arangojs')
。但是zeit-pkg因遇到const db = require('@arangodb').db;
zeit-pkg而返回错误。
> Error! TypeError: Cannot read property '0' of null
at shortFromAlias (/usr/local/lib/node_modules/pkg/lib-es5/walker.js:69:49)
at Walker._callee5$ (/usr/local/lib/node_modules/pkg/lib-es5/walker.js:894:25)
at tryCatch (/usr/local/lib/node_modules/pkg/node_modules/regenerator-runtime/runtime.js:62:40)
at Generator.invoke [as _invoke] (/usr/local/lib/node_modules/pkg/node_modules/regenerator-runtime/runtime.js:296:22)
at Generator.prototype.(anonymous function) [as throw] (/usr/local/lib/node_modules/pkg/node_modules/regenerator-runtime/runtime.js:114:21)
at step (/usr/local/lib/node_modules/pkg/node_modules/babel-runtime/helpers/asyncToGenerator.js:17:30)
at /usr/local/lib/node_modules/pkg/node_modules/babel-runtime/helpers/asyncToGenerator.js:30:13
at <anonymous>
我想知道require('@arangodb').db
有什么特别之处。是否存在任何替代方法来编写事务。或任何其他打包工具都可以支持require('@arangodb').db;
答案 0 :(得分:1)
zeit-pkg将JavaScript代码编译为可执行文件,这与Foxx不兼容,因为Foxx是运行JavaScript代码的可执行文件。
如果您想最小化/丑化/破坏代码,请看一下WebPack,this document from ArangoDB向您展示了如何使WebPack与Foxx一起工作,因为它将那些库标记为“外部”库,这些库被跳过以进行处理