如何使用Angular 4及更高版本实现JSON Schema Faker

时间:2019-02-26 10:35:34

标签: javascript json angular json-schema-faker

是否可以将JSON模式伪造者用作Angular中的第三方依赖项。我尝试对Angular使用依赖项注入,但是在提供程序中,我无法导入jsonSchemaFaker。

angular.json

"scripts": [
    "./node_modules/json-schema-faker/dist/json-schema-faker.bundle.min.js"
]

jsonSchemaFaker.service.ts

import { InjectionToken } from '@angular/core';
export const JSF_Token = new InjectionToken ('jsonSchemaFaker');

app.module.ts

providers: [
    { provide: JSF_Token, useValue: jsf }
]

...

declare let jsf: any;

这是我尝试在Angular应用程序中将json模式造假者作为依赖项注入的方法。.我正在获取..未捕获的ReferenceError:未定义jsf

2 个答案:

答案 0 :(得分:1)

这不是在有角度的应用程序中使用npm软件包的方式。

首先,在应用程序中导航至package.json的目录并安装软件包:

npm install json-schema-faker

然后在组件或服务内部按如下方式使用它:

// at the top of your file, next to other imports
import jsf from 'json-schema-faker';

// json-schema-faker is now available in the rest of your file as jsf

// you can, for example, have a service method that returns that:
jsf.generate({type: 'string'})

答案 1 :(得分:0)

我必须将提供者和声明更改为

providers: [
    { provide: JSF_Token, useValue: JSONSchemaFaker }
]

declare let JSONSchemaFaker: any;

原因:该库中提到的JSON Schema Faker的全局名称为“ JSONSchemaFaker”。将其声明为jsf是我的错误。