angular6 - InMemoryDbService 是干什么用的?角 6

标签 angular6

我试图从内存数据服务中获取多个对象,但我无法做到这一点,只是想知道是否有可能获取?或者我只能拥有一个测试数据而无法扩展它,它看起来像这样:

      import { InMemoryDbService } from 'angular-in-memory-web-api';

export class InMemoryDataService implements InMemoryDbService {
    createDb() {
        const groups = [
            {id: 0, name: 'Mr. Nice'},
            {id: 12, name: 'Narco'},
            {id: 13, name: 'Bombasto'},
            {id: 14, name: 'Celeritas'},
            {id: 15, name: 'Magneta'},
            {id: 16, name: 'RubberMan'},
            {id: 17, name: 'Dynama'},
            {id: 18, name: 'Dr IQ'},
            {id: 19, name: 'Magma'},
            {id: 20, name: 'Tornado'},
        ];
        return {groups}
    }
}

最佳答案

如果您想从 InMemoryDbService 中获取整个数组,您需要向以下地址发送 http get 请求: “API/组” .

如果您只想从列表中返回一个特定对象,您需要向以下地址发送 http get 请求: 'api/groups/id' 其中 id 是您的组 const 中定义的数字之一。

如果您打算向 InMemoryDbService 添加另一个集合,您只需定义一个新的 const 数组,然后将其添加到 createDb 方法的返回部分,如下所示:

const itemList = [
  {id: 1, name: "First item"},
  {id: 2, name: "Second item"},
];

return {
    groups: groups,
    items: itemList
}

请注意,端点现在是: “API/组” , 'api/groups/id' , “API/项目” 'api/items/id' 其中 id 是 const 数组中定义的数字之一。

您还需要注册 InMemoryWebApiModule 在 app.module.ts 的导入数组中:
imports: [
  InMemoryWebApiModule.forRoot(InMemoryDbService)
],

关于angular6 - InMemoryDbService 是干什么用的?角 6,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50273013/

相关文章:

angular - Angular 动态切换模板html,scss

security - NPM 6 - 我应该审计修复所有包漏洞吗?

Angular 6 Ngx typeahead 选项渲染

javascript - 如何在 Angular 6 中使用 Amcharts 4?

html - 如果一个 div 以 Angular 6 从该列中删除,如何将现有 div 从一列推送到另一列

Angular 6 @angular/pwa - sw 未成功提供 list start_url

angular6 - 如何在 ionic 4 中动态添加 Direction ['ltr' , 'rtl' ]?

unit-testing - 我需要帮助来生成对 angular6 中可观察到的 fromEvent 的测试

javascript - 如何在 JavaScript 中创建对象数组?

angular - 无法动态显示数据表中的数据。 ( Angular 6)