Angularjs 我们可以在angular应用程序中实现AMP吗?

Angularjs 我们可以在angular应用程序中实现AMP吗?,angularjs,mobile,amp-html,Angularjs,Mobile,Amp Html,我是AMP的新手,被要求将AMP添加到已经开发的angular网站。我还读到,AMP将所有第三方JavaScript排除在关键路径之外 但我不确定这是否可能。如果可能的话,你可以分享一些链接。欢迎提供任何帮助您当然可以从现有站点链接到AMP页面,但AMP的规范是HTML元素的有限子集,并且对页面上可以运行的JavaScript有限制。我不相信你可以有一个由Angular提供动力的AMP页面。假设你已经有了一个包含Angular页面的站点,比如: 1.html 2.html 然后您可以创建放大

我是AMP的新手,被要求将AMP添加到已经开发的angular网站。我还读到,AMP将所有第三方JavaScript排除在关键路径之外
但我不确定这是否可能。如果可能的话,你可以分享一些链接。欢迎提供任何帮助

您当然可以从现有站点链接到AMP页面,但AMP的规范是HTML元素的有限子集,并且对页面上可以运行的JavaScript有限制。我不相信你可以有一个由Angular提供动力的AMP页面。

假设你已经有了一个包含Angular页面的站点,比如:

  • 1.html
  • 2.html
然后您可以创建放大器,如:

  • 1.amp.html
  • 2.amp.html

1.html可以使用Angular和客户端javascript,但1.amp.html应该是相同内容的表示,但在服务器端生成,而不是在其中使用Angular javascript。按照这里的步骤操作:你应该会没事。

我认为这是不可能的。AMP的一个关键部分是内容都在那里:加载和预合成。你必须在你的网站上为AMP.Hello@Dai设置另一个端点。你能详细说明你的网站的另一个端点是什么意思吗?我想他的意思是让规范页面如
foo.bar/index.html
和AMP页面位于另一个端点如
AMP.foo.bar/index.html
foo.bar/amp/index.html
。这取决于你想如何设置你的URL的结构,但这就是它背后的想法。嗨@Toby,这是否意味着AMP可以主要用于静态页面?它可以用于拉入动态内容,但你必须使用它的约定,而不是角度。所有内容都需要完全呈现。(可能PhantomJS在这里有帮助?)所有AngularJS指令等都是无效的,禁止使用AMP。如@ade所说,您可以使用SSR解决方案(如Puppeterhi@ade)生成静态AMP页面。感谢链接,这非常有帮助。然而,我有点困惑,因为我的网站是在PHP上。它有一个主页index.php,不同的组件被加载,路由也相应地完成,基本上是一个SPA。如果现在必须将其转换为AMP,那么我需要创建index.AMP.php?是否有任何现场角度应用程序实现了放大器?我不知道有任何现场角度放大器使用放大器。我见过的所有AMP都使用服务器端渲染。我认为不可能使用客户端渲染创建AMP。您的链接已过期。