观看模板文件并将它们复制到 dist/ 文件夹

Jai*_*cap 5 javascript node.js typescript

我在我的项目中使用打字稿,我可以成功地观看 + 编译 .ts 文件并将它们输出到dist文件夹。

这是scripts我的一部分package.json

"start": "npm run build && npm run watch",
    "build": "npm run build-ts && npm run tslint",
    "test": "cross-env NODE_ENV=test jest --watch",
    "watch": "concurrently -k -p \"[{name}]\" -n \"Typescript,Node\" -c \"cyan.bold,green.bold\" \"npm run watch-ts\" \"npm run serve\"",
    "serve": "nodemon dist/server.js",
    "build-ts": "tsc",
    "watch-ts": "tsc -w",
    "tslint": "tslint -c tslint.json -p tsconfig.json"
Run Code Online (Sandbox Code Playgroud)

问题是我想使用 js 模板引擎(nunjucks),我需要查看文件views夹中的视图文件并将它们移动到dist文件夹中。

  • 有没有办法只使用npm scriptsor nodejs
  • 还是我需要使用其他工具,例如gulpwebpack

0zk*_* PM 5

我对 CRUD graphql 后端服务器有“相同”的请求,但不想使用gulpwebpack只是为了保持简单。

我发现你nodemon和我一样使用。然后,根据https://github.com/remy/nodemon上的文档,它可以用来监视除 default 之外的任何类型文件的更改js。此外,nodemon还可以监控除node.

第一个任务是检测所需文件的更改:在我的例子中,我想将 文件夹*.gql中的文件复制src/schemabuild/schema文件夹中。为此,您可以使用ext来表示文件类型,并watch使用选项来探索源文件夹。

第二项任务是复制文件。当然,您可以使用主机操作系统的复制命令。就我而言,我使用xcopyWindows shell(或cp类 Unix 操作系统)的 DOS 命令。nodemon有一个带有选项的“事件挂钩” event,可以在事件发生时执行命令行。只是我们需要restart检测到更改时节点服务器的事件nodemon

您可以使用命令行选项、全局配置文件或本地package.json项目配置文件。nodemonConfig我使用以下部分显示最后一个package.json

"nodemonConfig": {
  "watch": [
     "./src/schema",
     "./build"
  ],
  "ext": "js,gql",
  "events": {
     "restart": "xcopy .\\src\\schema\\*.gql .\\build\\schema /Y /O /R /F /I /V /E"
  }
}
Run Code Online (Sandbox Code Playgroud)

  • 我必须为 `graphql` 文件的目标添加一个 `"ignore"` 配置以阻止无限重启: `"ignore": ["./dist/schemas/**/*.graphql"]` (2认同)