Node.js 将角度2/3/4/5/6项目转换为角度通用项目

Node.js 将角度2/3/4/5/6项目转换为角度通用项目,node.js,angular,angular-universal,Node.js,Angular,Angular Universal,我刚刚更新了我的项目来使用Angular 5,我在我的主机上安装了一个NodeJS,所以我想创建一个Angular Universal应用程序,我想将我当前的Angular 5项目转换成一个可以在我的主机上安装的Angular Universal项目 到目前为止,我在这上面唯一发现的就是这个 我遵循这一点,它给了我错误,我想由于角度的快速变化,答案很可能已经过时,所以我想知道转换它的最佳方式 我是否应该使用starter种子并完成添加所有代码的繁琐工作?对我个人来说,最好的方法是将我的所有组件

我刚刚更新了我的项目来使用Angular 5,我在我的主机上安装了一个NodeJS,所以我想创建一个Angular Universal应用程序,我想将我当前的Angular 5项目转换成一个可以在我的主机上安装的Angular Universal项目

到目前为止,我在这上面唯一发现的就是这个

我遵循这一点,它给了我错误,我想由于角度的快速变化,答案很可能已经过时,所以我想知道转换它的最佳方式


我是否应该使用starter种子并完成添加所有代码的繁琐工作?

对我个人来说,最好的方法是将我的所有组件、服务和模块添加到universal starter项目中,确保我删除hammerjs或正确导入它(对于材料2)。我将大多数组件转换为.module,以便使用它们的延迟加载(不要忘记在路由文件和静态延迟加载路径中正确添加这些路径)


只花了几个小时,其中很多只是bug测试/修复,所以总的来说非常简单。

几周前我也遇到过同样的问题。有一个关于如何在Angular CLI项目中实现Universal的Wiki: 也许这对你有帮助


我发现最简单的方法是将当前的模块导入到新的安装中。由于新的起动器是为Angular 5 CLI设计的,我希望它能经得起未来的考验。我们将看到…

我为Angular Universal for Angular 5的平均应用程序编写了一个初学者工具包,您可以在GitHub中克隆我的存储库:。它提供了入门所需的所有说明。对于您的特定应用程序,您只需删除MongoDB部分(Mongoose和out of
server.js
node\u src/config/database
)和
npm卸载Mongoose
,就可以将您的项目集成到中。

在分享您的问题中的错误方面有什么相似之处吗?也许它们可以单独解决。哈哈,我自己也使用了完全相同的方法,当初学者工具包非常实用并且提供了我所需要的东西时,这很容易。唯一真正的变化是对jquery和hammerjs进行了一些检查,一些检查用于在html中呈现隐藏的表单,并实现延迟路由