View templateUrl和StyleURL的Angular2相对路径?

View templateUrl和StyleURL的Angular2相对路径?,view,angular,relative-path,View,Angular,Relative Path,在搜索时,我找到了一个名为moduleId的东西来设置模板和CSS文件的相对路径,但我不知道如何在angular2的组件中使用moduleId 实际上,问题出在我的文件夹结构中。我正在从dist文件夹加载我的所有.js文件,而我的视图(.html文件)在src文件夹中。因此,当我像这样使用moduleId:module.id时,我选择了dist文件夹的路径,而不是src文件夹 这里有人帮我告诉我如何为我的组件angualr2设置自定义moduleId吗 我的文件夹结构是这样的

在搜索时,我找到了一个名为
moduleId
的东西来设置模板和CSS文件的相对路径,但我不知道如何在angular2的组件中使用
moduleId

实际上,问题出在我的文件夹结构中。我正在从
dist
文件夹加载我的所有.js文件,而我的视图(.html文件)在
src
文件夹中。因此,当我像这样使用
moduleId:module.id
时,我选择了
dist
文件夹的路径,而不是src文件夹

这里有人帮我告诉我如何为我的组件angualr2设置自定义moduleId吗

我的文件夹结构是这样的

                                  App
                                  /\
                                 /  \
             (.js + .map files)Dist    Src(.ts + .html + .css files)
  • 文件夹Dist包含所有.map和.js文件
  • 文件夹src包含所有.ts、.HTML和.css文件
实际编码(工作)-

修改编码(由于路径不正确而无法工作)——

参考本教程

我还对TemplateUrl路径中哪些有效,哪些无效提出了一些问题。我在测试中发现以下情况是正确的:

templateUrl:“文件夹名/文件名”不起作用

templateUrl:“/文件夹名/文件名”不起作用

templateUrl:“./文件夹名/文件名”不起作用


所以您可以尝试一下。

通过在运行时更改导入文件的路径(从
src
dist
),解决了我的问题,如下所示:-

moduleId: module.id.replace("/dist/", "/src/")
通过这样做,您可以更改模块ID的路径目录

感谢@Nicolai的帮助


PS:-发布作为答案可能会帮助某人

似乎相关,是的相关,但不确切是我想要的,你知道这个问题吗?不,我自己不使用TS,只用于抢劫;-)@PardeepJain,您可以使用angular cli,它们提供了所有这些的自动设置。非常容易使用是的,我知道,但我更喜欢自己设置,我想,你可以看到我在这里的设置不起作用,已经尝试过了,顺便问一下,这三者之间的区别是什么?这里是一个很好的解释相对(以/,/或../)与非相对路径在typescript中,以及它们是如何解决的
@Component({
    selector: 'class-timing',
    templateUrl: 'class-timing.html',
    moduleId: module.id,
    styleUrls: ['src/app.css']
})
moduleId: module.id.replace("/dist/", "/src/")