For example, I'm trying to export a TS object to get this JavaScript output:
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];  This is my TS, but it's not clear with exporting,
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];  I've tried export default config[env] but its generated output isn't expected. What am I doing wrong?
Use a named export to export an interface in TypeScript, e.g. export interface Person{} . The exported interface can be imported by using a named import as import {Person} from './another-file' . You can have as many named exports as necessary in a single file.
YES, TypeScript can export a function! "Any declaration (such as a variable, function, class, type alias, or interface) can be exported by adding the export keyword."
The export = syntax specifies a single object that is exported from the module. This can be a class, interface, namespace, function, or enum. When exporting a module using export = , TypeScript-specific import module = require("module") must be used to import the module.
TypeScript has export = syntax. It specifies a single object that is exported from the module. This can be a function, class, interface, namespace, or enum.
In ES6 you are allowed to export names using the export function, or for default you can export anything. The require format goes like this:
let config = require('config')   And it takes the default export of config file. In your case, you should do:
export default config[env]   If you want to use the export, you would do something like:
let Environment = config[env]; export {Environment}   The difference would be:
import EnvirmentNameWhatever from "./config"   to
import {Environment} from "./config"   Using the export keyword on the declarations to export should do the job, like this:
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      } }; 
                        If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With