问题描述
当我使用module.exports并在末尾添加一个字符串时,它会导出并正确显示在字符串中,但是当我导出变量时,它将返回一个对象{}。
clientList = document.getElementById("client-list")
aLink = document.getElementsByClassName('a-link')
var exVariable;
function myFunction(event) {
event.target.setAttribute('href','clientinfo.ejs')
var variable = event.target.innerText
exVariable = variable
console.log(exVariable)
return exVariable
}
if (exVariable != null) {
module.exports = exVariable
}
在此,myFunction执行onclick事件。
var clientFolder = require('./export.js')
console.log(clientFolder)
解决方法
对您问题的简短回答是,模块通常在首次“需要”后才被缓存。在节点中,您可以阅读整个require.cache系统。由于我看到您正在使用document
,因此我怀疑这些文件是通过诸如webpack之类的文件捆绑在浏览器中的。在这种情况下,据我所知,没有办法完全不弄乱webpack内部结构。
但更简短的答案是:不要那样做。无论您要做什么,这都不是做到的方式。