如何在 Angular/ionic 网站中实施 AMP?

2023-11-21

最近我听说了 Accelerated Mobile Pages 项目,并阅读了一些有关它的信息。

我想知道如何为基于 Ionic 和 Angular 构建的现有网站实现它?


基本上没有几乎可能的解决方案可以做到这一点。如果你检查文档here.

让所有第三方 JavaScript 远离关键路径

第三方JS喜欢使用同步JS加载。他们还喜欢记录并编写更多同步脚本。例如,如果您有 5 个广告,每个广告执行 3 次同步加载,并且连接延迟为 1 秒,那么仅 JS 加载就需要 18 秒的加载时间。

AMP 页面允许第三方 JavaScript,但仅限于沙盒 iframe。通过禁止它们进入 iframe,它们就无法阻止主页的执行。即使它们触发多个样式重新计算,它们的小 iframe 也具有很少的 DOM。

样式重新计算和布局对于 DOM 大小来说是典型的,因此与重新计算页面样式和布局相比,iframe 重新计算速度非常快。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Angular/ionic 网站中实施 AMP? 的相关文章

  • $http.get() 与 JSON 数据

    我正在编写一个服务器应用程序 并希望客户端使用正文中的数据来参数化我的 GET 方法 如下所示 http v GET http localhost 3000 url text 123 foo bar GET url HTTP 1 1 Acc
  • Chrome 版本 58 的 Redactor 编辑器文本格式问题

    我们正在使用编辑器 https imperavi com redactor https imperavi com redactor 版本 10 1 1 并且由于对项目的大量依赖而未迁移到 Redactor II 最近 我们在 Chrome
  • 抛出 Java 异常时是否会生成堆栈跟踪?

    这是假设我们不调用 printstacktrace 方法 只是抛出和捕获 我们正在考虑这样做是为了解决一些性能瓶颈 不 堆栈跟踪是在构造异常对象时生成的 而不是在抛出异常对象时生成的 Throwable 构造函数调用 fillInStack
  • 角度 ng-repeat 根据条件添加样式

    我在 div 列表上使用 ng repeat 并且在渲染此 div 的 json 中手动添加项目 我需要定位我在 json 中添加的最后一个 div 它会自动在屏幕上渲染 即 couse 光标所在的位置 其余部分保持在相同位置 但没有给出渲
  • 页面上首次调用 Url.Action 速度很慢

    我有一个相当简单的 ASP MVC 视图的性能问题 这是一个登录页面 应该几乎是即时的 但需要大约半秒钟 经过大量挖掘后 问题似乎出在第一个调用上Url Action 大约需要 450 毫秒 根据迷你分析器 http miniprofile
  • AngularJS - RouteProvider 解析调用服务方法

    我创建了一项检查用户登录状态的服务 如果令牌存在 则登录用户 否则重定向到登录页面 最初我通过routeProvider解析调用了这个服务 这一次就可以完美工作 但是由于Angularjs服务是单例的 因此测试不会针对连续调用运行 然后 我
  • 优化 LATERAL join 中的慢速聚合

    在我的 PostgreSQL 9 6 2 数据库中 我有一个查询 该查询根据一些股票数据构建计算字段表 它为表中的每一行计算 1 到 10 年的移动平均窗口 并将其用于周期性调整 具体来说 CAPE CAPB CAPC CAPS 和 CAP
  • 当我使用可变参数而不是常量参数时,为什么我的内联表 UDF 慢得多?

    我有一个表值内联 UDF 我想过滤该 UDF 的结果以获得一个特定值 当我使用常量参数指定过滤器时 一切都很好 并且性能几乎是瞬时的 当我使用可变参数指定过滤器时 它会花费明显更大的时间块 大约是逻辑读取的 500 倍和持续时间的 20 倍
  • 即使在急切加载之后,belongs_to 关联也会单独加载

    我有以下关联 class Picture lt ActiveRecord Base belongs to user end class User lt ActiveRecord Base has many pictures end 在我的
  • 从 JSON 文件注入的编译指令 AngularJS

    希望有人能帮助我应对这一挑战 我使用以下命令从服务器请求 JSON 数据 http get 来自服务器的数据返回一个对象 对象中的一个值包含 HTML 标记 该标记使用以下方式注入到页面中 div div 在标记内 有一个名为的自定义指令
  • 未捕获的 ReferenceError:未定义角度 - Mean.IO

    我已遵循安装步骤 http mean io docsmean io 但是当我浏览 localhost 3000 时 我得到一个空白页面 当我打开控制台时 我得到一个指向相同错误的文件列表 未捕获的引用错误 角度未定义 我的问题是类似的to
  • Pandas hub_table 更快的替代品

    我正在使用熊猫pivot table在大型数据集 1000 万行 6 列 上运行 由于执行时间至关重要 因此我尝试加快流程 目前 处理整个数据集大约需要 8 秒 这太慢了 我希望找到替代方案来提高速度 性能 我当前的 Pandas 数据透视
  • Jasmine-jQuery loadFixtures 未定义

    我对整个茉莉花的事情仍然很陌生 在过去的几个小时里我陷入了这个问题 我尝试使用 loadFixture 加载外部夹具文件 我使用 Jasmine 2 0 0 和 Jasmine jQuery 2 0 5 ReferenceError loa
  • 从手机访问本地主机[关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 我正在使用
  • Ionic Facebook Api 无效密钥哈希

    我无法让我的应用程序允许 Facebook 登录 每次用户尝试登录 Facebook 并使用他们的 FB 验证我的应用程序时 都会出现以下错误 无效的密钥哈希 它们的密钥哈希 xxxxxxxxxx 与任何存储的密钥哈希不匹配 配置您的应用程
  • Rails Windows Vagrant 响应时间非常慢

    我在跑 Vagrant 1 7 1 Rails 4 1 4 Thin 1 6 1 Windows 7 每个静态文件的发送时间都超过一秒 在我的 PC 上加载一个页面可能需要大约 20 秒 而在同事的 Linux 机器上则只需瞬间 有一些帖子
  • 使用 AngularJS 多部分表单数据将文件上传到 Google Cloud Storage

    我正在尝试使用 AngularJS 中指定的多部分方法将图像文件上传到 Google Cloud Storagehttps cloud google com storage docs json api v1 how tos upload m
  • 无法使用 Ninject 将依赖项注入到从 Angular 服务调用的 ASP.NET Web API 控制器中

    我将 Ninject 与 ASP NET MVC 4 一起使用 我正在使用存储库 并希望进行构造函数注入以将存储库传递给其中一个控制器 这是实现 StatTracker 接口的上下文对象 EntityFramework public cla
  • 过度使用委托对性能来说是一个坏主意吗? [复制]

    这个问题在这里已经有答案了 考虑以下代码 if IsDebuggingEnabled instance Log GetDetailedDebugInfo GetDetailedDebugInfo 可能是一个昂贵的方法 因此我们只想在调试模式
  • AngularJS - 获取已定义路由的列表 - $routeProvider

    我正在尝试实施named routes 所以我不必写整个路径 经常改变 我想我可以编写一个服务来返回定义的路由列表和一个将对象转换为路由的过滤器 使用示例如下所示 a Click here a 假设我已将 name detail 添加到我的

随机推荐

  • 将事件保存到用户的日历

    如何将事件添加到用户的日历中 然后允许用户选择日历等 我有这段有效的代码 但这会将事件添加到用户的默认日历中 如何允许用户更改日历 自定义警报等 我见过其他应用程序打开日历应用程序并预 先填写字段 add to calendar let e
  • 使用 Python 2.x 中的“is”运算符将对象与空元组进行比较

    我看惯了if obj is None 在Python中 我最近遇到if obj is 由于元组是不可变的 这听起来像是 Python 解释器中合理的内部优化 让空元组成为单例 因此允许使用is而不是要求 但这在某个地方得到保证吗 从哪个版本
  • 使用多个键排序时反转特定键

    当使用多个键排序时 如何反转单个键的顺序 例如 vec sort by key k foo k reverse bar k 您可以使用sort by与Ordering reverse代替sort by key use std cmp Ord
  • Rails 3:如何通过javascript触发表单提交?

    我有一个表单 大部分只是作为普通表单提交 所以我不想在 form tag 中设置 remote gt true 选项 然而 在某些情况下 我希望能够有一个 javascript 函数发布表单 就像它是通过 remote gt true 发布
  • ASP.NET Identity - 使用安全标记强制重新登录

    So from ASP NET Identity 的 IUserSecurityStampStore 接口是什么 我们了解到 ASP NET Identity 具有安全标记功能 用于使用户登录 cookie 无效 并强制他们重新登录 在我的
  • 如何将dispatch_data_t转换为NSData?

    这是正确的方法吗 convert const void buffer NULL size t size 0 dispatch data t new data file dispatch data create map data buffer
  • 如何在闪亮页面而不是弹出窗口中渲染 scatter3d

    我正在考虑在我闪亮的应用程序中实现 3D 交互式绘图 到目前为止我一直在使用plotly 然而 plotly 有一个主要缺点 渲染时速度非常慢 我已经完成了检查 尽管涉及大量数据集 但更新的 outplot plot 因此 我希望使用一个名
  • 同时运行延迟作业和 Sidekiq

    我目前使用延迟作业来异步处理作业 我没有创建工人 而是使用 delay方法很多 我想转到 Sidekiq 但我的工作类型太多 无法确保所有工作都是线程安全的 所以我想并行运行 Delayed Job 和 Sidekiq 并一次迁移一种类型的
  • 如何捕获 pg_connect() 函数错误?

    pg connect 以表格式显示错误 而不是以表格式显示错误消息 需要错误消息警报 错误信息警告 pg connect function pg connect 无法连接到 PostgreSQL 服务器 致命 第 41 行 home tes
  • 使用 log4j2 进行公共日志记录

    我正在使用 log4j 1 2 和 commons logging 现在我正在尝试将其升级到log4j2 但是如何使用 log4j2 和 commons logging 来初始化 log4j2 我尝试通过以下方式初始化公共日志记录 它工作正
  • 从 JSON 检索项目时出现“无法将 Newtonsoft.Json.Linq.JObject 转换为 Newtonsoft.Json.Linq.JToken”

    当有以下代码时 var TermSource token Value
  • 代表们快了?

    如何任命一名代表 即NSUserNotificationCenterDelegate快点 以下是关于两个视图控制器之间的委托的一些帮助 Step 1 在您将要删除 将发送数据的 UIViewController 中制定一个协议 protoc
  • 在没有故事板的情况下启动ios项目

    我在使用 xibs 而不是故事板启动 iOS 应用程序时遇到了一些麻烦 问题是我遇到黑屏并且第一个视图控制器没有被调用 添加断点viewDidLoad方法 在应用程序委托标头中 我声明了这一点 property strong nonatom
  • linq 异常:只能从 LINQ to Entities 调用此函数

    我正在尝试获取保存在缓存中的数据 但它在 select new FilterSsrsLog 行上引发异常 例外 此函数只能从 LINQ to Entities 调用 List
  • 自动导入包的顺序和歧义

    JLS 第 7 章 软件包 一个包由许多编译单元组成 第 7 3 节 一个编译单元自动有权访问其包中声明的所有类型并且自动导入预定义包 java lang 中声明的所有公共类型 让我们假设以下代码 package com example p
  • jQuery 日期时间选择器 MVC3

    我的模型中有这个字段 DataType DataType DateTime Required ErrorMessage Expire is required public DateTime Expire get set 在我看来 Html
  • 在 JavaScript 中定义全局对象的独立于实现的版本

    我正在尝试定义globalJavaScript 中的对象在一行中如下所示 var global this global this 上述声明是在全局范围内的 因此在浏览器中this指针是一个别名window目的 假设它是在当前网页上下文中执行
  • 将 key=value 对转换回 Python 字典

    有一个日志文件 其中的文本以空格分隔key value对 每行最初都是从 Python 字典中的数据序列化的 类似于 join f k v r for k v in d items 键始终只是字符串 这些值可以是任何值ast literal
  • Keras 自定义指标迭代

    我对 Keras 还很陌生 我正在尝试定义自己的指标 它计算一致性指数 这是回归问题的度量 def cindex score y true y pred sum 0 pair 0 for i in range 1 len y true fo
  • 如何在 Angular/ionic 网站中实施 AMP?

    最近我听说了 Accelerated Mobile Pages 项目 并阅读了一些有关它的信息 我想知道如何为基于 Ionic 和 Angular 构建的现有网站实现它 基本上没有几乎可能的解决方案可以做到这一点 如果你检查文档here 让