跳转到主要内容

将Odoo转换为PWA

项目描述

Beta License: LGPL-3 OCA/web Translate me on Weblate Try me on Runboat

使Odoo成为一个可安装的渐进式Web应用程序。

渐进式Web应用可以在桌面和移动设备上提供可安装的、类似应用程序的体验,这些应用是通过网络构建和交付的。它们是快速且可靠的Web应用。最重要的是,它们在任何浏览器中都能运行。如果您今天正在构建Web应用,您已经在通往构建渐进式Web应用的路上。

  • 开发者信息。

服务工作者使用“Odoo类”构建,以具有与“用户页面”相同的类继承行为。请注意,“Odoo Bootstrap”不受支持,因此您在这里不能使用“require”。

所有服务工作者内容均可在“static/src/js/worker”中找到。用户页面与服务工作者之间的管理在“pwa_manager.js”中完成。

本模块的目的是提供一个制作PWA应用程序的基础。

目录表

安装

安装此模块后,在移动设备上浏览Odoo时,您将能够将其作为PWA安装。

强烈建议与响应式布局(如web_responsive提供的)一起使用此模块。

本模块旨在供Odoo后端用户(员工)使用。

安装渐进式Web应用后,它看起来和表现就像其他已安装的应用一样。它从与其他应用相同的位置启动。它在没有地址栏或其他浏览器UI的应用中运行。并且像所有其他已安装的应用一样,它是任务切换器中的顶级应用。

在Chrome中,渐进式Web应用可以通过三个点的上下文菜单安装。

如果您之前已安装了 web_pwa,请在安装 openupgradelib 后,使用 odoo shell 运行以下步骤。

>>> from openupgradelib import openupgrade
>>> openupgrade.update_module_names(env.cr, [('web_pwa', 'web_pwa_oca')], merge_modules=False)
>>> env.cr.commit()

配置

本模块允许您在设置中设置以下参数,以自定义应用程序的显示。

  • PWA 名称(默认为“Odoo PWA”)

  • PWA 短名称(默认为“Odoo PWA”)

  • PWA 图标(SVG)(默认为“/web_pwa_oca/static/img/icons/odoo-logo.svg”)

配置您的 PWA

  1. 前往 设置 > 通用设置 > 渐进式 Web 应用

  2. 设置参数(注意:图标 必须是 SVG 文件

  3. 保存

使用

使用您的 PWA

  1. 使用支持的浏览器打开 Odoo Web 应用(见 https://caniuse.cn/?search=A2HS

  2. 打开浏览器选项

  3. 点击“添加到主屏幕”(或在其他浏览器中为“安装”)

** 可能需要刷新页面以在启用选项后加载服务工作者。

已知问题/路线图

  • 集成 通知 API

  • 集成 Web Share API

  • 创建 portal_pwa 模块,供前端用户(客户、供应商等)使用

  • 当前 John Resig 的继承 实现不支持 async 函数,因为 this._super 无法在 promise 内部调用。因此,我们需要使用以下解决方案

    • 自然‘async/await’示例(这会中断“_super”调用)

      var MyClass = OdooClass.extend({
          myFunc: async function() {
              const mydata = await ...do await stuff...
              return mydata;
          }
      });
    • 使用解决方案的相同代码

      var MyClass = OdooClass.extend({
          myFunc: function() {
              return new Promise(async (resolve, reject) => {
                  const mydata = await ...do await stuff...
                  return resolve(mydata);
              });
          }
      });
  • 修复尝试在 localhost 上与多个数据库运行时的问题。浏览器不发送 cookie,web 清单返回 404。

  • Firefox 无法检测“standalone”模式。见 https://bugzilla.mozilla.org/show_bug.cgi?id=1285858

  • Firefox 在私有模式下禁用服务工作者。见 https://bugzilla.mozilla.org/show_bug.cgi?id=1601916

错误跟踪器

错误在 GitHub Issues 上追踪。如有问题,请先检查是否已报告您的问题。如果您是第一个发现的人,请通过提供详细且受欢迎的 反馈 来帮助我们解决。

请勿直接联系贡献者以获取支持或帮助解决技术问题。

鸣谢

作者

  • TAKOBI

  • Tecnativa

贡献者

维护者

本模块由 OCA 维护。

Odoo Community Association

OCA,或 Odoo 社区协会,是一个非营利组织,其使命是支持 Odoo 功能的协作开发并促进其广泛使用。

当前 维护者

eLBati

本模块是 GitHub 上 OCA/web 项目的一部分。

欢迎您贡献。要了解如何进行,请访问 https://odoo-community.org/page/Contribute

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源分布

此版本没有可用的源分布文件。请参阅生成分发存档的教程。

构建分布

odoo14_addon_web_pwa_oca-14.0.1.1.0-py3-none-any.whl (125.0 kB 查看哈希值)

上传时间: Python 3

支持者