2017-02-07 17 views
1

我经常阅读有关服务器端渲染的内容,这是Angular2的一个很棒的新功能,它可以让webapps被Google,Bing等抓取。angular2服务器端渲染:动态内容

但是,如何在应用程序启动时动态加载的内容工作?爬虫在索引页面之前是否会等待这些未决请求?或者是否必须指定我的Angular2应用程序的某个状态,它告诉服务器我的应用程序已准备好发送给客户端(在这种情况下是抓取工具)?

回答

0

我终于找到了在注释中getting started code内的解决方案:返回所呈现的网站之前

[...] 

// if true, server will wait for all async to resolve before returning response 
async: true, 

[...] 

当设置该标志为真,服务器会等待所有异步调用(如HTTP调用)。

+0

你是怎么用angular2应用程序运行的? –

+0

嗨@Finkes你能提供更多的见解吗? – Rakeschand

0

想法很简单。所有初始化,包括数据加载,在服务器端执行,当nodejs执行Angular应用程序时。客户端将获得具有初始化数据的HTML。对于爬虫可以从服务器请求的任何URL,角色应用将被初始化,路由,然后根据应用状态呈现html并返回给客户端。