簡體   English   中英

如何在Node.js中的多個文件之間共享變量

[英]how to share variable between more than One file in nodejs

// app.js

var myvar = 1  
module.exports = {myvar}; 

//我項目中的另一個

var mynewvar =require("../app.js")
console.log(mynewvar.myvar); // undefined ? 

我需要使var在所有項目中都是全局的嗎? 我正在全球嘗試,但是同一問題有人可以幫助我嗎?

我唯一的猜測是您可能沒有正確的app.js路徑。 這有效:

// app.js

var myvar = 1  
module.exports = {myvar}; 

// index.js

var mynewvar =require("./app.js")
console.log(mynewvar.myvar);

這是一個顯示其工作原理的副本:

https://repl.it/repls/CruelMonstrousArchives

也許您正在做與此不同的事情?

您可以通過es6(lib.js)或es5(lib2.js)的方式輕松實現此目標。

實時示例: https//codesandbox.io/embed/mo8z2ooovj

導出模塊es6 lib.js:

const myvar = 1;
export default myvar;`

導出模塊es5 lib2.js:

var myvar2 = 2;
module.exports = myvar2;`

到另一個文件中,您可以導入模塊並顯示類似的值,我使用一個組件:

 import myvar from "./lib";
 import myvar2 from "./lib2";

 // you can use the imported values here as you need


 // e.g.
 function App() {
   return (
     <div className="App">
       <h1>Hello CodeSandbox</h1>
       <p>value from lib.js {myvar}</p>
       <p>value from lib2.js {myvar2}</p>
      <h2>Start editing to see some magic happen!</h2>
    </div>
  );
}

const rootElement = document.getElementById("root");
ReactDOM.render(<App />, rootElement);`

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM