TL; DR问题: Angular和PageSpeed完全兼容吗?我无法在任何地方找到任何信息。
我有一个使用AngularJS加载来自外部网站的图像的应用程序。这些图像通常非常大(~500kb,~1200x900px),但在我的应用中以较低的分辨率(~800x500px)提供。我无法控制图像大小或压缩级别。
我已注册Google PageSpeed服务并完成所有操作。但是,这些图像不会以任何方式被触及。我想知道这是不是因为我正在使用AngularJS来提供它们(图像尽管是在Angular中,但我使用src="{{img}}"
而不是ng-src
来提供图像。
关于如何使其发挥作用的任何想法?它对我来说似乎是一个理想的服务,适当的压缩和缩放图像会使我的页面加载从~2mb到~100kb!
还有其他服务做类似的事吗?我需要某种中间件来压缩和缩放图像,然后再将它们提供给我的用户。
编辑:为清楚起见,我的服务器使用NodeJS / ExpressJS / AngularJS / MongoDB在Heroku上运行。不知道这是否会影响任何事情。
答案 0 :(得分:0)
经过一些研究后,似乎PageSpeed与Google搜索的工作方式类似,因为它会对您的网页编制索引并查找要压缩的图片。看到Angular需要在加载页面之前加载脚本,这两者不会一起工作。
这里有一个可能的解决方案:
http://www.yearofmoo.com/2012/11/angularjs-and-seo.html
对我来说,这不会真正起作用,因为我有动态搜索页面,我无法用PhantomJS预先渲染。但对于其他人来说,这可能是有用的。
如果这种情况发生变化,请在此提醒我们。