名称空间的使用对于Node.js来说并不是惯用的,因为模块本身充当名称空间,所以问题是特定于这些特定模块的。
可以使用对象扩展语法将其写得更短:
const PNTCI = {
...require('../messages/Telemetry_generated').PNTCI,
...require('../messages/header_generated').PNTCI
};
它的语法是:
const PNTCI = Object.assign({},
require('../messages/Telemetry_generated').PNTCI,
require('../messages/header_generated').PNTCI
);
如果这些模块经常一起使用,将它们作为单个模块重新导出可能是有益的:
module.exports = {
...require('../messages/Telemetry_generated').PNTCI,
...require('../messages/header_generated').PNTCI
};
PNTCI
变量可能不需要;模块可以分别导入到不同的变量中。如果在某些地方只使用其中的一些模块,这将使应用程序更加模块化。