如何使用RESTful访问加载包含AngularJS的HTML

时间:2014-12-18 20:03:39

标签: javascript angularjs rest

当不使用AngularJS时,我创建了一个响应/ mysite / users的网站。它返回一个HTML页面,其中用户记录填充在类似于表格的显示中。

我希望尝试一种AngularJS方法。我以某种方式加载网页,该页面的onload()调用/ mysite / users,它只返回一个JSON用户列表。

"某种程度上"部分是困扰我的。到目前为止,我已经沦为第一次调用/ mysite / showUsers。这将下载HTML页面,然后自己调用/ mysite / users。

同样,在使用AngularJS进行编辑时,我认为我必须在加载调用/ mysite / user / 1时调用/ mysite / userEdit / 1。

我想我错过了什么。我能得到线索吗? 谢谢, 杰罗姆。

2 个答案:

答案 0 :(得分:1)

正如您所指出的,AngularJS方法不是从服务器加载预呈现的HTML,而是加载JSON 数据列表并依赖AngularJS directives填充DOM客户端。

您的案例中的一个具体示例是一个页面,该页面加载一个Angular模块,该模块从/api/users获取用户的JSON列表,并利用ng-repeat指令将数据填充到页面中访问者的浏览器。 Here's a JSFiddle我发现这说明了你是如何做到这一点的。

所有这些都是数据插入HTML的关键所在;它可以在服务器端或客户端发生,Angular支持后者。 (这并不是说你无法从服务器加载预呈现的HTML,但是你会反对使用AngularJS的方式。)

答案 1 :(得分:0)

我很难描述我想要发生的事情。也许是因为它违背了Angular。

我的服务器使用用户#1的JSON响应/ user / 1。对于浏览器来处理它,我必须有一个可以显示此JSON的网页。鸡肉和鸡蛋风格,如何将此编辑网页导入浏览器?我的经典示例是使用/ user列出用户并在每个用户上创建一个链接进行编辑,例如“/ SOMETHING / 1”。

与此同时,我决定使用/ user / edit / 1。这将导致服务器呈现HTML文件,使用服务器端脚本插入window.onload()上的短语,用/ user / 1的结果填充骨架HTML。

谢谢Collin回复。