从另一个JS文件导出方法

时间:2019-09-17 22:34:24

标签: javascript

我无法从另一个JavaScript文件导入方法。

我尝试从文件中导出单个方法或类,但仍然无法正常工作。基本上,我试图学习Mocha,所以我尝试创建库,以便可以在Mocha中测试方法,但是我的导出和导入似乎不起作用。我在Chrome浏览器中运行脚本。

文件:myTest.js

GLFWwindow *mainWindow = glfwCreateWindow(WIDTH, HEIGHT, "Test Window", NULL, NULL);

文件:test.js

function myTestClass(){
    this.myTestText = "Welcome to myTestClass!";

    this.mySum = function(a, b) {
      return a + b;
    }

    this.mySubtraction = function(a,b) {
      return a - b;
    }

    this.myMultiply = function(a, b) {
      return a * b;
    }
};

export default {myTestClass};

文件:index.html

import myTestClass from 'myTest.js';
console.log("enter test.js file");
console.log("test.js finished importing myTest.js file");

当我在Chorme中打开index.html时,没有调用window.alert()函数,因此必定发生了错误。请注意,我所有的文件都在同一目录中。

3 个答案:

答案 0 :(得分:2)

您需要使用以Select

开头的相对引用

test.js

"/", "./", or "../"

答案 1 :(得分:0)

这还取决于您是在前端还是在Node中进行导入/导出。据我所知,Node没有导入/导出功能,因此您需要进行module.exports / require。

导出:

function myTestClass(){
    this.myTestText = "Welcome to myTestClass!";

    this.mySum = function(a, b) {
      return a + b;
    }

    this.mySubtraction = function(a,b) {
      return a - b;
    }

    this.myMultiply = function(a, b) {
      return a * b;
    }
};

export default myTestClass;

导入:

import myTestClass from './myTest.js'; // path to file that contains myTestClass

console.log("enter test.js file");
console.log("test.js finished importing myTest.js file");

答案 2 :(得分:-1)

您只需将module.export对象

module.exports= { myTestClass };

您使用require语句导入:

var importedFile = require('name of the file you importing from without .js');

然后您可以访问每个功能:

importedFile.myTestClass 

默认导出可以是函数,类,对象或其他任何东西。