既存のJavaScriptプロジェクトをタイプスクリプトに変換しています。このjavscript出力を取得するためにオブジェクトをエクスポートする方法がわからない
const path = require('path'),
rootPath = path.normalize(__dirname + '/..'),
env = process.env.NODE_ENV || 'development';
let config = {
development: {
amqpUrl: "amqp://localhost:15672",
root: rootPath
},
test: {
amqpUrl: "amqp://localhost:5672",
root: rootPath
},
production: {
amqpUrl: "amqp://localhost:5672",
root: rootPath
}
};
module.exports = config[env];
私は次のようにTypeScriptを書きましたが、エクスポートでは明確ではありません
import path = require("path")
const rootPath = path.normalize(__dirname + '/..')
const env = process.env.NODE_ENV || 'development'
let config = {
development: {
amqpUrl: "amqp://localhost:15672",
root: rootPath
},
test: {
amqpUrl: "amqp://localhost:5672",
root: rootPath
},
production: {
amqpUrl: "amqp://localhost:5672",
root: rootPath
}
};
/* this is the line i'm having problem how can i export config object*/
// export config[env];
エクスポートするとき、export default config[env]
しかし、期待される出力とは異なるものを生成します
ES6では、エクスポート機能を使用して名前をエクスポートできます。デフォルトでは、何でもエクスポートできます。 require
形式は次のようになります。
let config = require('config')
そして、それは設定ファイルのデフォルトのエクスポートを取ります。あなたの場合、あなたはすべきです:
export default config[env]
エクスポートを使用する場合は、次のようにします。
let Environment = config[env];
export {Environment}
違いは次のとおりです。
import EnvirmentNameWhatever from "./config"
に
import {Environment} from "./config"
エクスポートする宣言でexport
キーワードを使用すると、次のようにジョブを実行できます。
import path = require("path")
const rootPath = path.normalize(__dirname + '/..')
export const env = process.env.NODE_ENV || 'development'
export let config = {
development: {
amqpUrl: "amqp://localhost:15672",
root: rootPath
},
test: {
amqpUrl: "amqp://localhost:5672",
root: rootPath
},
production: {
amqpUrl: "amqp://localhost:5672",
root: rootPath
}
};