ai didi

javascript - 模块导出说两个 js 文件之间未定义

转载 作者:行者123 更新时间:2023-12-03 00:58:28 24 4
gpt4 key购买 nike

我还是 javascript 的初学者,如果我做了一些愚蠢的事情,我很抱歉。我有两个文件如下

文件 test.js

var test2=require("./test2");

const Type='TYPE';
const Brand='BRAND';

module.exports={
Type,Brand
}

function see(){
console.log(test2.details);
}
see()

文件 test2.js

var test=require("./test.js")
const details="for testing";

module.exports={
details
}

function doTest(){
console.log(test.Type)
}

doTest()

它给了我以下输出,其中显示未定义。

enter image description here

为什么输出未定义?

最佳答案

您使用的设计模式不可维护,甚至是不正确的。正如@Sergii Vorobei 建议的那样,删除循环依赖。循环依赖是指两个或多个文件相互导入时由于递归而导致意外错误的情况。

回答你的问题,

// test.js

const Type = 'TYPE';
const Brand = 'BRAND';

module.exports={
Type,
Brand
}

// test2.js

var test = require("./test.js")

function doTest() {
console.log(test.Type, test.Brand)
}

doTest()

保持代码简单。

关于javascript - 模块导出说两个 js 文件之间未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52718811/

24 4 0
文章推荐: azure - 如何在 Azure 中使用 Kusto 划分计数?
文章推荐: clojure - 如何在 Clojure 中制作 Web 应用程序?
文章推荐: Azure kubernetes - 如何使用 Azure API 管理来验证 kubernetes API?
文章推荐: excel - 在 Excel 对象模型自动化界面中按名称获取工作表
行者123
个人简介

我是一名优秀的程序员,十分优秀!

滴滴打车优惠券免费领取
滴滴打车优惠券
全站热门文章
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com