我试图从内存数据服务中获取多个对象,但我无法做到这一点,只是想知道是否有可能获取?或者我只能拥有一个测试数据而无法扩展它,它看起来像这样:
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}
}
}
Run Code Online (Sandbox Code Playgroud)
如果您想从 InMemoryDbService 获取整个数组,您需要向地址发送 http get 请求:'api/groups'。
如果您只想从列表中返回一个特定对象,您需要向地址发送一个 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
}
Run Code Online (Sandbox Code Playgroud)
请注意,端点现在是:'api/groups'、'api/groups/id'、'api/items'和'api/items/id',其中 id 是 const 数组中定义的数字之一。
您还需要在 app.module.ts 的导入数组中注册InMemoryWebApiModule:
imports: [
InMemoryWebApiModule.forRoot(InMemoryDbService)
],
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3007 次 |
| 最近记录: |