我想实现Sitecore应用程序(带角度js的单页设计):
我将使用Sitecore 8.我发现了this helpful blog,但正如他所提到的,页面编辑器根本不起作用
感谢。
答案 0 :(得分:4)
1
是的,我可以在Sitecore 7中使用AngularJS
为前端实现SPA,并使用WebAPI
为Sitecore项目提供数据,这一切都很好地协同工作。
您可以考虑使用Sitecore MVC Controllers
,它将与WebAPI一样有效。或者,如果您有时间学习新的Sitecore技术,可以使用Sitecore's Entity Service进行研究。两者都适用于提供Sitecore的数据。
根据经验,我建议您制作控制器,负责AnglarJS消耗的单一类型的数据。控制器传递的模型应该是精简的,仅包含与控制器相关的数据。
2
对于我的实现,体验编辑器不起作用,因为我使用AngularJS来操作和呈现数据。如果您不使用AngularJS提取数据,则可以使用Sitecore控件,但我不认为它可以在不使用代码进行黑客攻击的情况下实现。
3
如果您使用Sitecore控件,则应该可以通过体验编辑器进行个性化。可以通过内容编辑器和代码进行个性化。我建议您像大多数Sitecore实施一样构建SPA;布局,子布局等。您可以通过控制器,应用程序逻辑等中的代码实现个性化
4
我也没有AngularJs的经验,但是我从教程中学到了我需要知道的一切,剩下的就足够了,你可以弄清楚你是否熟悉任何编程语言。我建议你通过这个Codecademy Tutorial来完成练习 - 这是我学习的方法。
我还没有写过关于我如何实现它的博客,但Dave Peterson在his experiences with SPA with Sitecore and AngularJs写了两篇可能值得一读的博客。
答案 1 :(得分:1)
我有一篇关于我们如何为客户实现此目标的博文:http://www.sitecorenutsbolts.net/2015/12/07/Single-Page-Applications-in-Sitecore-Part-I/
请仔细阅读,它给出了在SPA中启用Sitecore时应遵循的原则。
答案 2 :(得分:0)
Sitecore中可以做任何事情,但是某些自定义过于复杂而不能被认为是实用的。
您可以轻松构建具有以下限制的SPA应用程序:
使用
显示各种视图a)服务器生成的模板,或
b)具有Sitecore管理内容的静态.html模板(通过自定义控制器或Content API检索为json)并使用AngularJS绑定到模板。
将个性化范围限制为内容。
体验或页面编辑器视图与最终用户体验有很大不同。即便如此,这也需要单独的设计来创建和维护。
更具挑战性的是:
利用Personalization动态显示不同的渲染。隐藏/显示渲染等
让体验编辑器反映SPA体验的实际设计