AngularJS材质组件能否与Angular2配合使用?

AngularJS材质组件能否与Angular2配合使用?,angularjs,angular,angularjs-material,Angularjs,Angular,Angularjs Material,我刚收到一个离开我们公司的同事发来的网络应用项目。该项目是使用Angular2作为框架构建的,但似乎这位工作人员试图将AngularJS材料用于HTML组件 据我所知,如果我想要AngularJS材质中的卡片组件,我会使用标签,对于Angular2材质,我会使用标签。在这个项目中,100%使用的组件是“md”组件,这对于Angular2项目来说没有意义 当我为项目提供服务时,没有显示任何内容,并且我收到错误信息:“md-card”不是已知元素。如果“md-card”是角度组件,则验证它是否是此模

我刚收到一个离开我们公司的同事发来的网络应用项目。该项目是使用Angular2作为框架构建的,但似乎这位工作人员试图将AngularJS材料用于HTML组件

据我所知,如果我想要AngularJS材质中的卡片组件,我会使用标签
,对于Angular2材质,我会使用标签
。在这个项目中,100%使用的组件是“md”组件,这对于Angular2项目来说没有意义

当我为项目提供服务时,没有显示任何内容,并且我收到错误信息:
“md-card”不是已知元素。如果“md-card”是角度组件,则验证它是否是此模块的一部分。
这很有意义,因为“md-card”在Angular2中不应是已知元素


所以我的问题是:您是否可以让AngularJS材质组件与Angular2一起工作,或者我必须在整个项目中重新编写所有HTML?

您必须同时运行两个框架才能使其工作。虽然这当然是可能的,但通常是不需要的,特别是如果AngularJS应用程序和Angular2+应用程序的结束和开始位置之间没有明确的分隔(例如,如果要将AngularJS应用程序迁移到Angular4,就会出现这种情况)。AngularJS组件,分布在Angular2+应用程序周围似乎不是一个理想的情况

以下是一些其他问题:

  • 组件名称可能冲突
  • 路由可能相互干扰
  • AngularJS组件和Angular2+组件之间的通信很困难
我有两个建议。

  • 要么消除对AngularJS的依赖,在前任同事之后进行清理
  • 或者,围绕Angular2材质组件创建薄包装组件,该组件与AngularJS材质组件具有相同的名称和签名。这只有在组件的工作方式有点类似的情况下才可能实现 我推荐第一个建议,因为后者可能只适用于最简单的组件。

    检查此项