gpt4 book ai didi

javascript - Angular 7 配置或替代方案?

转载 作者:行者123 更新时间:2023-11-29 23:06:22 27 4
gpt4 key购买 nike

我一直在努力解决如何将 Angular 7 实现到我的 .NET Core 2.X 项目中,同时保持两个框架的优点,但没有成功。我面临的主要问题是 Angular 想要控制我的前端以及它如何接收它。我的意思是它迫使你对所有东西都使用静态模板,我明白了这个概念,但对于我的项目,这将生成大量的模板/组件或带有一堆未使用的显示元素的模板。拥有更多从服务器接收模板然后处理所有绑定(bind)、DI、更新等的通用前端组件更有意义。

我查看了有关动态组件、动态模板 URL、自定义元素和许多其他主题的几个选项和问题。但我看到的大多数答案的问题是,它们实际上都没有动态模板,它们可能使用动态组件,但实际加载的控件最终仍然有一个静态模板。

This question seems to be pointed to most

我确实遇到了 solution这似乎是一个选项,但后来我意识到它必须与 JIT 编译器一起运行。当一切都可以提前编译时,这又给客户端增加了不必要的负担。

还有一个关于使用 Angular Elements 的,但是这个有自己的 problems apparently如果不分配重新布线或其他变通办法来保持一切正常,确实无法解决问题。

动态组件加载器听起来很有前途,来自 Angular site它指出

Component templates are not always fixed. An application may need to load new components at runtime.

这意味着模板可以动态设置,但与此同时,这意味着在运行时加载新组件将解决这个问题。但是加载的组件有一个静态模板。模板没有生成或更改,或者我只是遗漏了什么?

我看过Angular SSR这几乎可以处理它,但我似乎无法弄清楚如何通过 Controller 或以其他方式利用 .NET Core/ASP.NET 或动态服务器生成的内容的任何好处。它似乎只是将编译从客户端卸载到服务器上,但仍然使用相同的静态模板。有没有办法使用 Node.js 渲染 MVC 路由然后发送模块?

曾经有一种方法可以将组件的 TemplateUrl 设置为服务器上的路由,但现在不允许这样做,这使得我发现很多答案都过时了,但我想要设置它的确切方式.

我能想到的唯一真正的选择是使用 MVC 生成动态模块/组件,然后将它们加载到 Angular 应用程序中。通过 Controller 编译 .cshtml View 以创建 HTML 字符串然后用于编译 Angular 模块/组件然后将其发送到客户端并将其加载到 Angular 应用程序是否可行?

我知道如何将我的 View 编译成 html 字符串,但我不确定如何着手编译 Angular 模块,或者即使这是正确的想法或者是否有更好的处理方法?

在我看来,这应该是一件相当容易的事情,所有的工具似乎都在那里,但不确定如何让事情正常进行。

最佳答案

我最近开始使用 Angular(在使用 .net、jquery、javascript、react 之后),我的第一次交互是直接使用 angular 7。我注意到的第一件事是我在 angular 中的开发速度有多快,但是有很多我什至不确定的文件数量,但是与 React 相比是生成的,但是 React 的学习曲线肯定比 Angular 更高。

如果您需要真正轻量级的东西,您绝对应该选择库然后是框架。 react 是一个不错的选择,但它不是 MVC 驱动的,你会发现它与 Angular 非常不同(我有时会意识到这一点)。

除此之外,如果我的大部分代码是静态的,我可以选择某种可以预编译的 HTML 模板框架(即 nunjucks)。

对于在 .net 中创建的组件,我认为不可能以 Angular 对它们进行预编译,因为如果您需要那些具有动态数据的组件,您只会在 .net 中创建一些东西。

关于javascript - Angular 7 配置或替代方案?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54672112/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com