gpt4 book ai didi

javascript - 可以看到 javascript 文件中的函数,但看不到变量

转载 作者:行者123 更新时间:2023-11-28 03:49:52 24 4
gpt4 key购买 nike

我的目录结构如下:

src
|--> js
|--> more js files in nested folders
test
|--> spec
|--> js test files

如果在规范中的一个 js 测试中,如果我尝试从嵌套 src 目录中的 js 文件调用函数,我可以很好地调用该函数。但是,如果我尝试调用一个变量,它找不到它,并且我收到一个引用错误。

我的函数(可见)的声明如下:

function myFunctionName() {
... some code ...
}

我的变量是在函数之后声明的,而不是在任何其他函数内声明的,如下所示:

var myVar = '...';

我还尝试将 myVar 声明为 const,以获得相同的结果。

在 myTestSpec.js

(function () {
'use strict';
describe('...', function() {
it('...', function () {

// Works
expect(myFunctionName()).toEqual('...');

// Doesn't work
var newVar = myVar;
});
});
})();

最佳答案

最终通过将我需要的任何“全局”状态粘贴到函数中(以 json 形式返回)来解决这个问题。我现在只需要在每次开始测试时调用这个函数。

我猜这对性能有轻微影响,因为我们需要在多个测试中重新创建状态,但是它不是生产代码(仅测试),所以不应该成为问题,这意味着我不必依赖另一个 JS 库,例如 require js..

关于javascript - 可以看到 javascript 文件中的函数,但看不到变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48092848/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com