使用AngularJS混合完全渲染和部分渲染的页面

时间:2014-07-20 18:17:29

标签: javascript angularjs web-applications angular-ui-router

在我的网络应用程序中,我将部分页面完全呈现在服务器端(以便通过谷歌轻松编制索引),并且部分页面应该部分使用AngularJS进行渲染。渲染整页很简单,但是当我想将它与部分渲染的页面混合时,我很困惑。

我看到的问题是如何使从完全渲染的页面导航到部分渲染?假设我在以下网址上有一个完全呈现的页面:fakedomain.com/products/all现在,我想允许用户编辑他们的个人资料,这将是一个部分呈现的页面(可在fakedomain.com/#/user上找到) /轮廓)。 我该如何进行所有路由和渲染?

我的意思是,当用户点击编辑他/她的个人资料的选项时,我应该渲染index.html我在哪里声明了ui-view?如果是,我如何确保使用正确的部分?

顺便说一句。我在服务器端使用NodeJS而且我对客户端的东西很新。

1 个答案:

答案 0 :(得分:0)

你可以使用AngularJS html5模式https://docs.angularjs.org/guide/ $ location来取消hashbang。然后,您需要将应用程序的所有请求路由到index.html(加载angularjs)。

您需要在nodeJS应用程序或网络服务器上为静态页面路由添加例外,以便正确处理对静态页面的请求。

这应该是正常的,并为用户提供一体化的体验。