首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将chai-as-promised与Typescript一起使用?

如何将chai-as-promised与Typescript一起使用?
EN

Stack Overflow用户
提问于 2018-11-19 02:18:12
回答 4查看 5.4K关注 0票数 9

我正在尝试在TypeScript中使用chai-as-promised包。首先,下面的代码在简单的JavaScript中工作得很好。

代码语言:javascript
复制
import * as chai from 'chai';
import * as chaiAsPromised from 'chai-as-promised';

chai.use(chaiAsPromised);
const expect = chai.expect;

import * as sinon from 'sinon';

import { MyClass } from '.';

describe('Test my class', () => {
  let myClass: MyClass;

  beforeEach(() => {
    myClass = new MyClass();
   });

  it('Should render home', () => {
    const req = new RequestMock();
    const res = new ResponseMock();

    return expect(myClass.getHomePage(req, res)).to.be.fulfilled()
      .then((returnedValue) => {
        chai.expect(returnedValue).to.not.be.equal([]);
      });
  });
});

我在这段代码中有以下错误:

..。它指出了这个问题:

代码语言:javascript
复制
interface PromisedTypeComparison {
    (type: string, message?: string): PromisedAssertion; // <<-- 
    instanceof: PromisedInstanceOf;
    instanceOf: PromisedInstanceOf;
}

我测试了大量的机会,这是我最接近解决方案的一个。

我想使用chai-as-promise的功能,比如fullfulledrejected…等。

我怎么才能做到呢?

EN

回答 4

Stack Overflow用户

发布于 2020-09-30 05:34:26

只需导入默认的chai-as-promised,一切都会正常工作:

代码语言:javascript
复制
import * as chai from 'chai'    
import chaiAsPromised from 'chai-as-promised'
chai.use(chaiAsPromised)
票数 6
EN

Stack Overflow用户

发布于 2021-07-07 03:34:46

我认为this answer就是您所需要的:

添加types for chai-as-promised,这应该会处理TypeScript错误:

npm install --save-dev @types/chai-as-promised

对我很管用。之前,我得到了“属性‘最终’在类型‘断言’上不存在。”;在添加了这个之后,每个人都很高兴:-)

我确实必须将我的import更改为require

之前:

代码语言:javascript
复制
import chaiAsPromised from 'chai-as-promised';

之后:

代码语言:javascript
复制
import chaiAsPromised = require('chai-as-promised');
票数 4
EN

Stack Overflow用户

发布于 2021-05-17 15:53:34

你可以这样写

代码语言:javascript
复制
import { use as chaiUse } from 'chai';
import * as chaiAsPromised from 'chai-as-promised';

chaiUse(chaiAsPromised);
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53364078

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档