Nest.Js:从外部项目文件夹导入文件

时间:2020-09-16 14:58:19

标签: typescript directory nestjs

我开始使用Nest.Js,并创建了具有以下结构的完整堆栈应用程序:

app structure

api:nestjs应用
client:前端应用程序
models:前后共享模式(仅接口)

因此,我在api文件夹内的tsconfig.json中设置了别名路径,以使其可以很快导入:import { User } from 'models/user.model'

{
  "compilerOptions": {
    "module": "commonjs",
    "declaration": true,
    "removeComments": true,
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "allowSyntheticDefaultImports": true,
    "target": "es2017",
    "sourceMap": true,
    "incremental": true, 
    "outDir": "./dist",
    "baseUrl": "./",
    "paths": {
      "models/*": ["../models/*"]
    }
  }
}

问题在于打字稿正在编译并更改dist文件夹下的根结构,而巢cli找不到main.js文件来启动应用程序。

dist folder

是否可以移动models文件夹并保留nestjs结构? 还是可以更改nestjs配置以在api/src/main.js上启动应用程序?

1 个答案:

答案 0 :(得分:2)

当根src目录之外的代码存在时,打字稿会执行此操作,以确保编译后可以使用相同的路径。您可以修改nest-cli.json并添加一个entryFile属性,以告知Nest main文件在哪里。另外,考虑使用类似Nx之类的方法来帮助创建全栈monorepos。