繁体   English   中英

无法访问所需文件中的变量

[英]Not able to access variables in required file

我在一个项目上使用browserify,并正在执行以下操作:

我有一个文件test.js。 在test.js中,只有以下内容:

var test = 'test';

现在,在同一目录中,我有主文件“ app.js”。 我需要test.js并尝试像这样访问“测试”:

var testing = require(./test.js);
alert(test);

这将失败,并且控制台将返回“ test is undefined”。

现在,我确实尝试将其放在“ test.js”中:

module.exports = {
    test: 'test'
}

和在app.js中:

var testing = require(./test.js);
alert(testing.test);

这确实有效,但这不是我想要的。 我不想在一个对象中定义每个变量,函数等。 我希望在app.js中的代码之前由gulp写入test.js代码的整个文件,就像它是服务器包含文件一样,或者好像两个文件都在'head'元素中并且test.js都写入了第一。

这种行为甚至可能吗?

没有自定义逻辑,就不可能实现您想要的。 但是我相信您可以通过使用ES6模块而不是CommonJS模块找到一个折衷方案。

你将能够写

export var test = 'test';

声明并导出变量test 然后可以使用导入

import {test} from './test';

由于您使用的是browserify,因此将ES6模块插入CommonJS转换器非常简单。 例如,您可以使用Babel

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM