为了账号安全,请及时绑定邮箱和手机立即绑定

如何导出函数内部的常量?-ReactJS

如何导出函数内部的常量?-ReactJS

素胚勾勒不出你 2023-09-28 16:50:53
在一个名为File_A.jsI 的文件中,有一个包含常量的函数。我想导出这个常量,并且只有这个常量(而不是整个函数),以便在另一个名为File_B.js. 我尝试使用module.exports但它返回该变量未定义。下面是一个简化的示例。谢谢// my function in File_A.jsconst MyFunctionA = () => {  const myVariable = 'hello'  module.export = {myVariable: myVariable}  return (  /*...*/  );}// my second function in File_B.jsconst MyFunctionB = () => {  const {myVariable} = require('./File_A.js');  console.log(myVariable) // undefined  return(  /*...*/  );}
查看完整描述

1 回答

?
哔哔one

TA贡献1854条经验 获得超8个赞

如何导出函数内部的常量?

对此有两个答案:

  1. 你不知道。这没有道理。相反,您可以将常量移出函数并将其导出。

  2. MyFunctionA您完全按照您所做的那样进行操作,但是该常量在至少执行一次之前不会出现在模块的导出中。这是可能的,因为您使用的 CommonJS 样式模块是动态的并且可以在运行时更改。然而,正如您所发现的,使导出依赖于函数调用会带来麻烦。

因此,采用#1,我们得到:

// my function in File_A.js

const myVariable = "hello"; // Odd name for a constant? ;-)

module.exports.myVariable = myVariable;

const MyFunctionA = () => {

    return (

        /*...*/

    );

};

对此有几点说明:

  1. MyFunctionA仍然关闭常量并按照以前的方式引用它。

  2. myVariable不会成为全局范围,因为 CommonJS 模块的顶级范围不是全局范围。


查看完整回答
反对 回复 2023-09-28
  • 1 回答
  • 0 关注
  • 67 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信