如何解决ASP.NET Web 窗体和 React
我是 React 的新手,所以请多多指教。
我制作了一个简单的 ASP.NET Web 窗体项目,它成功地在 React 中打开了一个页面。我的下一个问题是,是否有可能从 React 页面打开一个包含 ASPX 页面内容的新弹出窗口,并以某种方式在两个页面之间进行通信?
场景:我们购买了使用 React 制作的简单布局设计器的访问权限,我们希望使用不同的设置提供 JSON。但是,这些设置当前来自生成 JSON 的 ASP.NET Web 窗体页面(托管 ASCX 控件)。这种情况是完全不可能的吗?也许我们可以使用服务在两者之间进行通信,但重要的是这个 3rd 方设计者(通过这个开发者,可以实现自定义功能,比如打开一个弹出窗口或类似的)可以打开一个设置弹出我们有在 ASP.NET Web 窗体中创建。
如果这太复杂了,我们将不胜感激我们如何实现这一点。例如,iframe 仍然是一个东西吗?或者有没有更好的新技术? (如果我们需要在 React 项目之外托管一个页面,该页面会返回通信)。
我希望我的解释是可以理解的,否则让我知道,我会尽量详细说明。
希望能帮到你,先谢谢了!
为了澄清起见,我们已经聘请了 3rd 方软件的开发人员来帮助我们实施解决方案,React-wise,所以我只需要找出关于两个世界的整合的可能性。
>解决方法
是引导程序、jQuery + jQuery.ui 对话框还是反应?他们都应该工作。但是,您不能在所有情况下都允许在您显示的对话框中进行任何回发。一旦你做了一个回发——然后页面循环就开始了,它会弹出对话框。
这个问题并不仅限于网络表单,而是您现在必须避免在显示此类对话框时回发。当然,虽然 Web 表单在今天有些陈旧,但它们非常容易将控件及其事件连接到代码背后。
不用说,采用这些具有所有这些出色对话框和小部件的框架之一吗?它们确实很好,但现在这意味着您必须编写 ajax 调用并避免回传 - 这可能需要大量工作。那么即使 jQuery.UI 也可以将整个不同的 aspx 页面加载到 div 中并弹出它? (而且效果很好)。好吧,您现在拥有了作为对话框弹出表单的酷炫不同页面,但是当您执行此操作时,您无法通过标准的 asp.net 按钮和控件触发任何回传。正如所指出的,这个问题并不仅限于 asp.net web 表单,而只是 webforms obvsilty 鼓励了很多带有代码的回发。这些回传的往返次数非常昂贵,但可以节省大量时间来轻松编写此类代码。
您可以尝试一个对话框表单,其中包含一个围绕着确实会导致回传的控件的更新面板。 因此,在 Web 表单中,曾经是您的朋友并极大地简化了编码的东西现在变成了您的敌人。 (那个敌人是很多后背和往返)。
因此,您必须放弃大量执行回发的代码和表单,根本无法将其推入并放入一些弹出对话框表单中,因为该表单很可能有很多回发 - 他们会折叠该对话框并开始往返过程。
只要你记住以上几点?然后采用引导程序、jQuery.UI 对话框或 react 应该可以正常工作-但是您要花费大量时间编写 ajax 调用,而那些对代码背后的调用将不会使用表单上的文本框和控件-因为它们是 sill坐在浏览器 + 用户桌面上,当您对服务器端代码进行 ajax 调用时不要随随便便。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。