javascript - 将 Chrome 应用程序移植到 UWP : How to handle "background page"?

标签 javascript uwp google-chrome-app windows-10-universal porting

我有一个 Chrome 应用程序(本质上是一个 Chrome 扩展程序,具有一些额外的 API 访问权限并在单独的窗口中显示其 UI),我正在尝试将其移植到 UWP。我有 Chrome 应用程序的源代码,但该应用程序的很多工作都是在其后台页面中完成的。 UWP JS 应用程序似乎没有后台页面的概念,或与用于与后台页面交互的 Chrome 扩展程序/应用程序 API 的等效项。

在 UWP JS 应用程序中是否有某种方法可以创建与应用程序运行时一样长的“背景页面”的等价物,在应用程序运行之前完全加载,不显示 UI,并且可以从其他页面访问?它需要持久(即不会在每次导航 UI 页面时重新加载)并且始终可用(即在其他页面加载之前完成加载)。

或者,如果有更好的方法来执行此操作(将 Chrome 应用程序移植到无法运行 Chrome 且需要在客户端运行/不能托管在服务器上的 Windows 设备),请提出替代方法。

最佳答案

我认为您正在寻找的是一个“服务”类,它与应用程序一样存在,并且包含需要从应用程序中的多个位置调用的“共享”代码。 为此,我建议您研究单例模式(顺便说一句,这是一种代码味道)或者更好的是,使用 IoC 容器并将该类注册为“单例”。

这两种方法都允许您拥有所述类的一个实例,只要应用程序运行,该实例就会保持其状态。

关于javascript - 将 Chrome 应用程序移植到 UWP : How to handle "background page"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51817969/

相关文章:

javascript - 将代码从 Rxjs 转换为 xstream

javascript - Trello 应用程序无法在 Angularjs (routeProvider) 中实例化

javascript - kml 文件中多边形的 LatLngBounds?

c# - UWP 应用程序和 WPF 应用程序通过本地网络通信

c# - 如何在 C# 中处理 UWP KeyDown 与 Canvas 的交互

javascript - 拒绝执行内联事件处理程序,因为它违反了 CSP。 (沙盒)

node.js - 如何使用 npm 安装甚至不在 Node 应用程序中使用的全局包?

javascript - 最多包含 2 个连续相等字符和其他选项的正则表达式

c# - Xamarin Form - 如何在 UWP 中以 PDF 或 JPEG 格式存储图像

javascript - TCP套接字 Chrome