typescript:获取文件夹的路径

typescript:获取文件夹的路径,typescript,Typescript,如何在typescript上获取文件夹: 我有这样的结构: src infra[文件夹] knex[文件夹] 迁移[文件夹] 配置[文件夹] -knexfile.ts[文件] 您好,我是,目前我有一个文件:knexfile,它位于我的src/config/knexfile.ts文件夹中 我想使用src/infra/knex/migrations目录 我的knexfile.ts: import knex from 'knex'; import path from 'path

如何在typescript上获取文件夹:

我有这样的结构:

  • src

    • infra[文件夹]

      • knex[文件夹]
        • 迁移[文件夹]
    • 配置[文件夹]

    -knexfile.ts[文件]

您好,我是,目前我有一个文件:knexfile,它位于我的src/config/knexfile.ts文件夹中 我想使用src/infra/knex/migrations目录

我的knexfile.ts:

import knex from 'knex';
import path from 'path';
import dotenv from 'dotenv';
dotenv.config();
interface KnexConfig {
  [key: string]: object;
}
const extension =
  process.env.NODE_ENV === 'production' ||
  process.env.NODE_CONFIG_ENV === 'staging'
    ? 'js'
    : 'ts';
const database: KnexConfig = {
  development: {
    client: 'postgresql',
    connection: {
      port: process.env.DB_PORT,
      host: process.env.DB_HOST,
      user: process.env.DB_USER,
      password: process.env.DB_PASS,
      database: process.env.DB_NAME,
    },
    pool: {
      min: 2,
      max: 10,
    },
    migrations: {
      tableName: 'knex_migrations',
      directory: path.resolve(__dirname, 'src', 'infra', 'knex', 'migrations'),
      loadExtensions: [extension],
      extension: extension,
    },
    seeds: {
      loadExtensions: ['.ts'],
    },
    timezone: 'UTC',
    useNullAsDefault: true,
    onUpdateTrigger: (table: string) => `
    CREATE TRIGGER ${table}_updated_at
    BEFORE UPDATE ON ${table}
    FOR EACH ROW
    EXECUTE PROCEDURE on_update_timestamp();
    `,
  },
};

const knexConfig = database['development'] as knex.Config;
module.exports = knexConfig;
基本上,我的迁移文件位于dirotiro src/infra/migrations中

但是我的文件在src/config/knexfile.ts中

我有这个:

目录:path.resolve(uuu dirname,'src','infra','knex', “迁移”)


但这不起作用,因为我的文件位于文件夹src/config上,而不在基本文件夹中。//p>
路径
将在您尝试解决以下问题时理解相对路径:

目录:path.resolve(_dirname,“../infra/knex/migrations”)