我正在使用export class TranslateUniversalLoader implements TranslateLoader {
/**
* Gets the translations from the server
* @param lang
* @returns {any}
*/
public getTranslation(lang: string): Observable<any> {
return Observable.create(observer => {
observer.next(
//Perfom API call here
fs.readFileSync(`http://example.com/locales/${lang}.json`, 'utf8')
);
observer.complete();
});
}
}
模块config
。正确地在输出方向上复制配置文件。但是,NodeJS
模块仍然无法加载它们。
config
配置文件位于config子目录中:
import config from 'config';
// Prints "undefined"
console.log(config);
答案 0 :(得分:0)
在您的示例中,您只需要&#39;配置包。你还没有真正要求加载它。
配置加载的典型用法基于NODE_ENV值。这描述了您运行节点应用程序的环境。例如。生产,开发等。
您可以从命令行设置NODE_ENV值。 E.g。
export NODE_ENV=development; node ./src/app.js
然后,在您的代码中,然后将配置文件中的元素分配给var或constant。 E.g。
const dbconfig = config.get('dbConfig');
所以,以下面的文件为例......
在/config/development.json
中{
"dbConfig": {
"user": "some-user",
"password": "somePassword",
"connectString": "server:port/schema"
}
在文件中,您尝试将配置读入...
import config from 'config';
const dbconfig = config.get('dbConfig');
console.log ("User is " + dbConfig.user); // should print 'User is some-user'
不要忘记设置NODE_ENV值,以便配置知道要读取的文件...
export NODE_ENV=development; node ./src/app.js
或者,使用您的示例
export NODE_ENV=default; node ./src/app.js