我有模态服务来打开,确认和关闭对话框,并且正在制作其单元测试文件,但是我在Angular上遇到了错误,这是代码。
模态服务
@Injectable()
export class ModalService {
constructor(private dialog: MatDialog) { }
public open<modalType>(modalComponent: ComponentType<modalType>): Observable<any> {
let dialogRef: MatDialogRef<any>;
dialogRef = this.dialog.open(modalComponent, {
maxWidth: '100vw'
});
console.log(dialogRef)
dialogRef.componentInstance.body = body;
return dialogRef.afterClosed().pipe(map(result => console.log('test'); );
}
}
Run Code Online (Sandbox Code Playgroud)
模态服务规格
export class TestComponent {}
describe('ModalService', () => {
let modalService: ModalService;
const mockDialogRef = {
open: jasmine.createSpy('open')
};
beforeEach(async(() => {
TestBed.configureTestingModule({
imports: [ MatDialogModule ],
providers: [
ModalService,
MatDialogRef,
{ provide: MatDialog, useClass: MatDialogStub }
]
}).compileComponents();
modalService = TestBed.get(ModalService); …Run Code Online (Sandbox Code Playgroud) 我是 graphql hasura 的新手,我遇到了如何更新一个表中的多行的问题,因为通常我只更新每个表的一行。
我想以动态方式更新多行
例如,我有现有的行数据。
id: 1, name: 'rosie', age: 12
id: 2, name: 'jane', age: 20
id: 3, name: 'rafaela', age: 25
Run Code Online (Sandbox Code Playgroud)
我只想编辑 2 行。
id: 1, name: 'rosie update', age: 12
id: 2, name: 'jane update', age: 21
Run Code Online (Sandbox Code Playgroud)
我有一系列用户。可以是 1 个或 1 个以上的用户将被更新。
const users = [
{id: 1, name: 'rosie update', age: 12}.
{id: 2, name: 'jane update', age: 21}
];
mutation update_article {
update_user(
where: {id: {_eq: users[0].id}},
_set: {
name: users[0].name,
age: users[0].age
} …Run Code Online (Sandbox Code Playgroud)