我有一个类文件someClass.js看起来像:

//assigns globalVar from some file
const globalVar = getFromFile() //returns a string such as "some global var"

export default class SomeClass {
  ...
  public static someFunc() {
     if (globalVar == "Hello"){
       return 2
     }
     else {
       return 3
     }
  }


在我的测试文件中,我将其导入为:

import SomeClass from './someClass';


在我的测试中,我想为每个测试使用不同的值覆盖globalVar,如下所示:

test('call someFunc with globalVar set to Hello', async () => {
  //set globalVar to "Hello"--how can I do this?
  const result = SomeClass.someFunc()
  expect(result).toBe(2)
}


我怎样才能做到这一点?有什么方法可以模拟const吗?

最佳答案

你不知道常量不能更改,这就是为什么它被称为常量的原因。

使用var代替。

关于javascript - 如何在类中模拟全局变量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59736924/

10-13 00:36