带主体选择器的Angular2根组件

带主体选择器的Angular2根组件,angular,Angular,我有一个使用angularjs的应用程序,我想开始将这个应用程序重写为Angular2。 不幸的是,最初的应用程序是Asp.NETMVC的混合体,当时body和ng应用程序一样 我想在Angular2中使用类似的方法将AppComponent选择器设置为body。 这样我就可以一步一步地将旧的应用程序改写成新的组件 我的问题是组件内部需要模板。由于html将从服务器打印出来,这是否可能没有模板 目前它是这样工作的。当用户点击页面时,服务器返回html <html> <body

我有一个使用angularjs的应用程序,我想开始将这个应用程序重写为Angular2。 不幸的是,最初的应用程序是Asp.NETMVC的混合体,当时body和ng应用程序一样

我想在Angular2中使用类似的方法将AppComponent选择器设置为body。 这样我就可以一步一步地将旧的应用程序改写成新的组件

我的问题是组件内部需要模板。由于html将从服务器打印出来,这是否可能没有模板

目前它是这样工作的。当用户点击页面时,服务器返回html

<html>
<body ng-app="flymark">

Here could be any angular directive or other controolers

</body>
</html>

这里可以是任何角度指令或其他控制器

如果我理解正确,这是可能的,但并不总是需要在组件内部使用模板,这取决于您的偏好和需要:

您有两个选项可以使用模板:

  • 模板
  • 模板URL:

    templateUrl:“”,
    样式URL:['https:/test.css']

  • 您可以使用模板URL并将您的服务器URL传递到模板URL这应该可以很好地工作,但您必须对模板进行更改,即使它位于服务器中,以便与您的组件交互,否则它不会以您希望的方式响应


    您应该根据需要将html划分为几个其他组件,以提供URL。这将使您能够以模板的任何部分为目标

    如果我理解正确,这是可能的,但并不总是需要在组件内部使用模板,这取决于您的偏好和需要:

    您有两个选项可以使用模板:

  • 模板
  • 模板URL:

    templateUrl:“”,
    样式URL:['https:/test.css']

  • 您可以使用模板URL并将您的服务器URL传递到模板URL这应该可以很好地工作,但您必须对模板进行更改,即使它位于服务器中,以便与您的组件交互,否则它不会以您希望的方式响应


    您应该根据需要将html划分为几个其他组件,以提供URL。这将使您能够以模板的任何部分为目标

    你能提供一个它目前是如何实现的摘录吗?@ElwinArens done。但我认为这是不可能的,因为我想编译一个没有模板的组件,而AOT实际上是在编译模板。你能提供一个它目前是如何实现的摘录吗?@ElwinArens done。但我认为这是不可能的,因为我想编译一个并没有模板和AOT的组件,实际上是在编译templates@VolodymyrBilyachat是的,如果你把它作为一个HTML文件传递,它不会。因为没有办法将目标体作为选择器。但您可以将html文件划分为单独的模板,然后通过不同的组件调用它,这样您就可以将目标体作为目标,并为其设置单独的选择器。在任何情况下,您可能需要更改当前模板是,但请阅读原始问题:)它是什么:(我不能重写整个应用程序。我所需要的是有可能将根组件绑定到主体,然后在内部插入正确的组件。这应该可以工作,您可以将其全部绑定到根组件内,但在任何情况下,您可能需要对html文件进行一些调整,您可以通过普通根选择器调用此选项
    ,浏览器无法工作。)将尝试修复页面,并在
    根目录
    @VolodymyrBilyachat周围添加一个包装器
    body
    标记。是的,如果您将其作为单个HTML文件传递,则不会。因为无法将body作为选择器。但您可以将HTML文件划分为单独的模板,然后通过不同的组件调用它,这样您就可以将body作为选择器d有单独的选择器。在任何情况下,您可能需要更改当前模板是,但请阅读原始问题:)它是什么:(我不能重写整个应用程序。我所需要的是有可能将根组件绑定到主体,然后在内部插入正确的组件。这应该可以工作,您可以将其全部绑定到根组件内,但在任何情况下,您可能需要对html文件进行一些调整,您可以通过普通根选择器调用此选项
    ,浏览器无法工作。)将尝试修复页面,并在
    根目录