为什么 claudia.js 以特定方式使用 nconf 时包验证失败?

我在 NodeJS 项目中使用 nconf,我想使用 claudia.js 将其部署到 AWS Lambda。我已关注此example

const path = require('path');
const nconf = require('nconf');

function Configuration(){
    nconf.argv().env({ lowerCase: true,separator: '_' });

    let defaultJsonPath = path.join(__dirname,'default.json');
    console.log(`Using default config at ${defaultJsonPath}`);

    nconf.file("default",defaultJsonPath);
}

Configuration.prototype.get = function(key) {
    return nconf.get(key);
};

module.exports = new Configuration();

使用 claudia-local-api 在我的本地机器上测试时,此代码运行良好。

但是,当我尝试使用 claudia create .. 部署到 Lambda 时,它只是在 validating package 处停止而没有任何错误。

claudia create --verbose --profile wgmtest --version dev --region eu-west-1 --api-module app
packaging files npm install -q --no-audit --production
npm WARN claudia@1.0.0 No description
npm WARN claudia@1.0.0 No repository field.

added 21 packages from 18 contributors in 0.339s

2 packages are looking for funding
  run `npm fund` for details
validating package
5.12.0

如果我导出 class 而不是 functionclaudia create 命令可以正常工作(见下文)。我想了解这里的问题是什么,或者至少我如何获得问题的一些额外日志输出。

const path = require('path');
const nconf = require('nconf');

class Configuration {
    constructor() {
        nconf.argv().env({ lowerCase: true,separator: '_' });

        let defaultJsonPath = path.join(__dirname,'default.json');
        console.log(`Using default config at ${defaultJsonPath}`);

        nconf.file("default",defaultJsonPath);
    }

    static get(key) {
        return nconf.get(key);
    }
}

module.exports = Configuration;
xyzz108 回答:为什么 claudia.js 以特定方式使用 nconf 时包验证失败?

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/1022326.html

大家都在问