当前位置: 首页 > 面试题库 >

AngularJS中的$资源关系

慕震博
2023-03-14
问题内容

在AngularJS中定义隔离资源的常用方法是:

angular.service('TheService', function($resource){
  return $resource('api/url');
});

我正在尝试找出编写与其他模型相关的模型的最佳方法,例如Order具有1个或多个OrderItems的模型。我的第一个想法是:

  1. 创建OrderServiceOrderItemService作为独立资源模型
  2. 编写一个查询OrderService并观察结果数组的控制
  3. 当结果数组更改时,请查询的OrderItemService所有商品ID,并order使用扩展信息来装饰对象。

似乎有点混乱。有没有更优雅的方式?


问题答案:
angular.service('OrderItem', function($resource) {
  return $resource('api/url/orderItem');
});

angular.service('Order', function($resource, OrderItem) {
  var Order = $resource('api/url/order');

  Order.prototype.items = function(callback) {
    return order.query({orderId: this.id}, callback);
  }
  return Order
});

上面的东西可以解决您的问题吗?然后,您将其用作

var order, items;

Order.get({id: 123}, function(o) {
  order = o;
  o.items(function(is) { items = is; });
});

Angular的$ resource无法理解关系。这是我们希望在1.0版之后进行更改的内容。

我不认为您不应该将数据直接放在订单上,因为它不是订单的一部分,而且由于现在也包含items对象,因此在持久化订单时会遇到问题。



 类似资料:
  • 问题内容: 我有一个使用$ resource的简单控制器: 我在指令中使用此控制器(在链接功能中) 但是区域是不确定的。调用是异步的,这很逻辑。 我的问题是我该如何等待结果和区域成为包含所有数据的数组? 这里指令的定义 问题答案: 如果要使用异步方法,则需要通过$ promise使用回调函数,示例如下:

  • 资源分配特点 coolie 是前端工程的构建方案,以页面(html)为导向,JS 和 CSS 都是 HTML 的描述文件。 <!--app.html--> <!doctype html> <link href="style.css" rel="stylesheet"> <script src="app.js"></script> 如上,style.css是app.html的样式修饰,app.

  • 随着 Jekyll 被更广泛的使用,一系列的教程、框架、扩展、示例和其他各种有用的资源也相继出现。下面列出了一些最流行的 Jekyll 资源合辑的链接。 Jekyll 提示和技巧,以及示例 与 GitHub Pages 集成的技巧 重用代码并保持文档同步至最新的示例。 使用 Simple Form 来集成一个简单的联系表单 JekyllBootstrap.com 提供了详细的解释,例子和辅助代码让

  • Windows 命令行界面 cmder 的官方网站 宁皓网《命令行》视频课程 宁皓网《我的工作流程:Windows》视频课程里的命令行 宁皓网《我的工作流程》视频课程里的终端

  • Atlassian:Learn Git Git 远程服务 Github,国外服务商,公开仓库免费,私有仓库收费 Coding.net,国内服务商,提供免费的公开与私有仓库 阿里云 Git,国内服务商,提供免费的公开与私有仓库 Atlassian,国外服务商,提供免费的公开与私有仓库

  • Digital Ocean:How To Use Rsync to Sync Local and Remote Directories on a VPS Tecmint:10 Practical Examples of Rsync Command in Linux