输出到另一个目录时,如何在 Typescript 编译过程中包含 .html 文件

Jim*_*Jim 5 node.js typescript

我构建了一个具有以下文件结构的应用程序:

在此处输入图片说明

我正在为此应用程序使用 Typescript 和 Angular2。我在 .ts 文件上有观察者,当有任何变化时,会自动编译打字稿文件。.ts 文件位于/assets/app文件夹中,转译的 .js 文件的输出目录是 /public 应用程序文件。

这工作正常,但是当 CRUD 处理任何 .html 文件时,我必须直接在/public/app文件中编辑这些文件,因为它们由于是 .html 而不是 .ts 文件而不会被转换。

我想知道(对于 Angular2 和 Typescript 来说相当新)是否有任何方法可以让 html 视图文件在创建和更新时自动移动到公共文件夹?

这是我当前的 npm 命令,它监视 NodeJS 和 .ts 文件的变化:

"start": "concurrently \"tsc -w \"  \"nodemon ./bin/www\"",
Run Code Online (Sandbox Code Playgroud)

谢谢

yug*_*mar 6

要解决此问题,您可以将 html 文件保存为以下格式:

fileName.html.ts
Run Code Online (Sandbox Code Playgroud)

在这里,将整个 html 定义为:

export const html: string= `<div> something </div>`;
Run Code Online (Sandbox Code Playgroud)

要在指令中获取此 html,您可以将其用作:

import {html} from 'fileName.html'
Run Code Online (Sandbox Code Playgroud)

代替 templateUrl,您应该使用模板作为:

template: html
Run Code Online (Sandbox Code Playgroud)

有关更多信息,您可以在 github 上查看此 repo

希望这将解决您的问题。

  • @Squiggle 看起来像*它*。您能否为此创建一个答案?我很乐意为它投票。我不太了解通配符声明的概念,也不知道如何将 `declare ...` 代码挂钩到我的项目中。 (3认同)