angularjs - 我可以将 Angular 应用程序从 Electron 移动到浏览器吗?

标签 angularjs electron

我目前在 Electron 中有一个 angular 应用程序。 (它是由其他人构建的)我想在我的浏览器中运行它(可能将其转换为渐进式 Web 应用程序)。这可能吗?如果是这样怎么办?

最佳答案

我自己做类似事情的一些经验的简短总结。就我而言,这是可能的,但这可能并不总是正确的。希望这可以帮助。

查找并评估应用程序对 Electron api 的依赖 - 尝试在 Angular、ngxElectron 或其他 Angular Electron api package 器中搜索 require('electron') 或更可能,修复或更改应用程序,使其不再依赖于 Electron。

搜索 Electron API 关键字和用法并决定如何处理它们。应用程序可能使用 Electron 的示例 - Electron 菜单、剪贴板、BrowserView 或应用程序可能使用 IPC 的更多幕后。

该应用程序可能会引用 Node api,因为 Node 相对容易在 Electron 中混合到您的应用程序中,这将是一个需要修复的问题。搜索 Node api 引用。

某些应用程序在 Electron 之外具有 native 依赖项,​​您需要找到任何此类 API 并决定如何处理它们。

工作的规模(即使有可能)将取决于应用程序本身提供的功能和所需的 native 功能的范围、对 Electron 功能的依赖程度、对 Node.js 的依赖。

例如,在 Electron 中,开发人员可以比平时更多地控制浏览器,并且可以选择关闭正常的 Web 安全功能。当您将应用程序移至浏览器时,可能会出现跨站点脚本(CORS 等)或其他安全问题。查看创建 BrowserWindows 时传递的选项。如果应用程序具有异国情调的设置,则可能需要更改架构。

你需要决定移植后应用程序是否仍然需要在 Electron 中工作(这可能是可能的,但会使事情变得复杂)

如果应用程序仍应在 Electron 中运行,您需要决定如何处理此问题的策略(例如,检查 Electron 的 if 语句或其他策略)。

关于angularjs - 我可以将 Angular 应用程序从 Electron 移动到浏览器吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54557709/

相关文章:

javascript - 如何将 select2 4.0 与 angularjs 一起使用,何时初始化它

javascript - 当 header 中包含 Angular 时,模块 'tripSee' 不可用

node.js - 如何使用 Electron 伪造签署 Electron 应用程序?

javascript - 在 Webpack 中加载静态 JSON 文件

javascript - angular-ui-select 与 bootstrap form-inline 一起损坏

angularjs - Angular JS : JSON data is not getting displayed in ng-Grid

node.js - Linux,使用 Electronjs - Nodejs 执行需要 super 用户权限的操作

electron - 有没有办法在 Electron 中将本地文件加载到 HTML 中?获取 ERR_UNKNOWN_URL_SCHEME

php - 如何在Laravel中访问%APPDATA%

javascript - 将图像 blob 对象保存到本地文件系统 Javascript