我找不到使用UI的路由器,而不是ngRoute路由当角使用$更新PUT方法的任何实例。 使用UI路由器时是$更新PUT方法可能吗?
Answer 1:
在$update
你的问题的评论链接中的示例方法无关$routeParams
或$stateParams
。 那些(在大多数情况下)只是指那些在URL中存在的参数。
举个例子,如果你宣布你的配置作为网址: /#/foo/:id/bar
和你访问的网址: /#/foo/5/bar?hello=world&verified=1
那么$routeParams
和$stateParams
会是一个对象,看起来像:
{id: 5, hello: "world", verified: "1"}
注:在$ stateParams的情况下,我认为在配置的URL可能需要声明为: /foo/:id/bar?hello&verified
至于$update
方法和PUT
请求,这些都涉及到角资源模块。 你会从你引用了一个服务(厂)宣布,它利用了的例子注意到$resource
服务。 如果你看看在文档专门下返回部分中,您将看到$resource
服务将返回:
资源“类”对象与可选扩展与自定义操作的资源操作的默认设置的方法。 默认集包含以下操作:
{'get': {method:'GET'},
'save': {method:'POST'},
'query': {method:'GET', isArray:true},
'remove': {method:'DELETE'},
'delete': {method:'DELETE'} };
它进一步指出:
这些动作保存,删除和删除都可以在它与$前缀的方法。
所以$save
, $remove
, $delete
是缴费,但没有$更新。 这就是为什么在本例中的服务有一行:
...
'update': { method: 'PUT'},
...
这意味着要延长这些动作默认设置,使$update
将作为该对象的方法,它会使用HTTP PUT方法,而不是GET / POST / DELETE和其他人一样。
我sugggest你做进一步的阅读$ routeParams , $ stateParams和ngResource但希望它们之间的区别是显而易见的。
文章来源: $update PUT method in Angular?