Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用TypeScript传递环境值_Typescript - Fatal编程技术网

使用TypeScript传递环境值

使用TypeScript传递环境值,typescript,Typescript,我在JS中看到这一行: const myKnex = require('knex')(config); 通常,我会将其更改为TS,包括: import { myKnex } from 'knex'; 但是如何添加配置部分呢?请小心,因为您提到的两行代码并不相同。在第一种情况下,您导入默认导出,然后将其作为函数运行,并保存返回值;在第二种情况下,您将导入一个特定的命名导出 在任何情况下,第一行都是这样工作的,无论是在Typescript还是现代JavaScript中: import kne

我在JS中看到这一行:

 const myKnex = require('knex')(config);
通常,我会将其更改为TS,包括:

 import { myKnex } from 'knex';

但是如何添加配置部分呢?

请小心,因为您提到的两行代码并不相同。在第一种情况下,您导入默认导出,然后将其作为函数运行,并保存返回值;在第二种情况下,您将导入一个特定的命名导出

在任何情况下,第一行都是这样工作的,无论是在Typescript还是现代JavaScript中:

import knex from 'knex';
const myKnex = knex(config);

注意,你提到的两条线并不相等。在第一种情况下,您导入默认导出,然后将其作为函数运行,并保存返回值;在第二种情况下,您将导入一个特定的命名导出

在任何情况下,第一行都是这样工作的,无论是在Typescript还是现代JavaScript中:

import knex from 'knex';
const myKnex = knex(config);

使用Node时需要注意的一个重要问题是,它在ES6模块出现之前就已经开发了自己的Node

您引用的第一行代码正在使用该模块系统,但它所做的不仅仅是加载模块。当您加载模块时,Knex实际上返回了一个函数,配置被传递到该函数中。另一种写法是:

const knex = require('knex');
const myKnex = knex(config);
因此,如果您想使用ES6模块系统,在编写TypeScript加载knex时,这是首选,您可以执行以下操作:

import * as knex from 'knex';
const myKnex = knex(config);
通过对Knex进行一点挖掘,看起来确实需要使用import*作为语法,而不是从“Knex”导入Knex(如果您使用的是TypeScript)。这里有一条线索可以深入到这一点:


本手册还涵盖了您可能会遇到的所有不同用例。我认为它们非常有用。

在使用Node时需要注意的一点是,它在ES6模块出现之前就已经开发出了自己的节点

您引用的第一行代码正在使用该模块系统,但它所做的不仅仅是加载模块。当您加载模块时,Knex实际上返回了一个函数,配置被传递到该函数中。另一种写法是:

const knex = require('knex');
const myKnex = knex(config);
因此,如果您想使用ES6模块系统,在编写TypeScript加载knex时,这是首选,您可以执行以下操作:

import * as knex from 'knex';
const myKnex = knex(config);
通过对Knex进行一点挖掘,看起来确实需要使用import*作为语法,而不是从“Knex”导入Knex(如果您使用的是TypeScript)。这里有一条线索可以深入到这一点:


本手册还涵盖了您可能会遇到的所有不同用例。我认为手头上有这些东西很有帮助。

我当然也想知道这一点。这是一个合法的问题。我当然也想知道。这是一个合法的问题。