【问题标题】:Patterns for balancing processing between content scripts and background scripts用于平衡内容脚本和后台脚本之间处理的模式
【发布时间】:2019-02-18 20:29:05
【问题描述】:

我正在开发一个 chrome 插件来更改某些页面的内容。看看一个做类似事情的扩展 (https://github.com/callumlocke/json-formatter)。我看到该插件使用后台脚本来完成繁重的工作和内容脚本来处理不太密集的任务,并将繁重的工作(通过消息传递)委托给后台脚本。这是一种模式吗?我应该避免对内容脚本执行繁琐的处理任务并为此创建一个后台脚本吗?

【问题讨论】:

  • 这取决于处理的繁重程度。它可能对于一个后台进程来说太重了(如果你因为某种原因不能使用网络工作者),或者它可能依赖于传输成本太高的数据。没有模式,只有个案分析。另请注意,许多开发人员只是为了好玩而喜欢过度设计事物。

标签: google-chrome-extension


【解决方案1】:

这不是一种模式,而是一种常识。由于后台脚本在不同的上下文中运行,如果扩展程序执行繁重的工作并最终崩溃,则当前页面不会受到影响。

此外,您将有机会使用 devtools 分析器和其他 devtools 功能来分析您的扩展程序。这很酷,因为如果是这种情况,您将能够知道是什么拖累了您的扩展程序性能。

简而言之,将所有繁重的进程移至后台并仅使用内容脚本来处理 DOM 操作是一个好主意。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-10-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多