javascript - browserify 中两个文件相互需要

标签 javascript browserify

<分区>

我遇到了浏览器化 JS 的问题,其中定义的函数返回未定义。我有一种感觉,因为我的两个文件需要彼此。文件本身太大,无法放在这个问题中,所以我将在这里简化它:

file_A.js

var fileB = require('./file_B.js');

var fileA = {};
module.exports = fileA;

fileA.functionOne = function() {
  // do something
  fileb.functionOne();
}

fileA.functionTwo = function() {
  // do something else
}

file_B.js

var fileA = require('./file_A.js');

var fileB = {};
module.exports = fileB;

fileB.functionOne = function() {
  // do something
  fileA.functionTwo();
}

文件A可以调用文件B中的函数没有问题。但是,当我尝试从文件 B 调用文件 A 函数时,我得到的是 undefined

正如我所说,我有一种感觉,因为他们需要彼此。但他们确实需要互相要求。我没有在文档中找到任何地方告诉您不要这样做,或者如果必须的话如何避免这样做。

请帮忙:(

最佳答案

这只会引起疼痛。将两个文件需要的任何内容分解成一个不需要文件 A 或文件 B 的单独文件。

关于javascript - browserify 中两个文件相互需要,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34308159/

相关文章:

javascript - socket.io:在同一个HTML页面中正确地更换房间并实现聊天

javascript - 单击链接时隐藏第二层下拉菜单 - jQuery

javascript - browserify 模块中的“this”上下文

gulp - 在 package.json 中声明时 Reactify 转换未运行

javascript - 使用 location.hash 显示/隐藏元素

JavaScript 平滑滚动不起作用

javascript - Angular +浏览器

javascript - PDFKit 无法在浏览器中加载图像

node.js - 如何将参数传递给 grunt browserify 转换 (hbsfy)?

javascript - 使用 Google AJAX 库 API 时将 jQuery 注入(inject)页面失败