我想在Angular2中導出可重複使用的JSON模擬(用於我的測試等)在Angular2中導出JSON模擬
export class Mock {
"bla1":1 // real values, not types
"bla2":2
}
然後我想在我的測試中導入此,如:
import { Mock } from './mock'
,並使用它,例如:
myData = Mock
如何實現,其裝飾我需要等?
我想在Angular2中導出可重複使用的JSON模擬(用於我的測試等)在Angular2中導出JSON模擬
export class Mock {
"bla1":1 // real values, not types
"bla2":2
}
然後我想在我的測試中導入此,如:
import { Mock } from './mock'
,並使用它,例如:
myData = Mock
如何實現,其裝飾我需要等?
創建一個模擬文件中像這樣 -
people_mock.json
[
{"id": 1, "name": "Brad"},
{"id": 2, "name": "Jules"},
{"id": 3, "name": "Jeff"}
]
而在你的spec文件使用
import {PEOPLE_MOCK} from './people_mock'
Demo這裏
沒有跡象表明是應該是一個類。這是一個POJO常數。用於常量的OpaqueToken
is supposed to be used。
import { OpaqueToken } from '@angular/core';
export const jsonObj = { ... };
export const JSON = new OpaqueToken('json constant');
export const JSON_PROVIDER = { provide: JSON, useValue: jsonObj };
然後,它可以添加到當前providers
並注入啓用DI-功能
import { Inject } from '@angular/core';
import { JSON, JSON_PROVIDER } from '.../json';
...
providers: [JSON_PROVIDER]
...
constructor(@Inject(JSON) json) {}
而且隨着
providers: [{ provide: JSON, useValue: mockedJsonObjMock }]
如果常量是不應該被嘲笑,戲弄從DI獲得好處,只需導入/導出json
對象,然後再查看。
它不工作 –