2017-04-11 72 views
0

你好
如何將一個變量從EJS頁面傳遞到另一個EJS頁面。
例如,我有這個頁面
我如何將一個變量從EJS頁面傳遞到另一個EJS頁面

// insertion.ejs // 




<!DOCTYPE html> 
      <html lang=」en」> 
      <head></head> 
      <header> 
       <% include ../views/header %> 
      </header> 
      <body> 
      <script> 
      var a="hello"; 
      </script> 
      </body> 
     </html> 

,而這個頁面

// get.ejs // 



     <!DOCTYPE html> 
      <html lang=」en」> 
      <head></head> 
      <header> 
       <% include ../views/header %> 
      </header> 
      <body> 
      <script> 
      var b 
      </script> 
      </body> 
     </html> 

所以,我怎麼可以傳遞變量給變量B的含量

回答

0

如果你的意思是通過當用戶點擊一個鏈接,並從一個頁面轉到其他的價值,那麼你可以使用查詢參數,並有類似的鏈接:

<a href="page2?name=value">link</a> 

其中name是查詢參數的名稱,value是它的值,可以使用適當的數據填充EJS模板。

現在,您可以在您的路由處理程序中獲取該參數,並將其傳遞給具有其他變量的模板,或者您可以通過頁面上的客戶端JavaScript訪問它。

如果您想傳遞變量,您希望將該變量提供給用戶,那麼您需要使用某些會話存儲,cookie或本地存儲。

如果您想將變量從一個頁面傳遞給其他所有用戶以減少重複,那麼您應該使用include將其包含在所有需要它的頁面或由處理程序傳遞的頁面中。

從你的問題來看,這不是很清楚你的意圖是什麼,但這或多或少可以在所有情況下做到。

0

那麼你可以模擬綁定在一個頁面,但不是兩個單獨的頁面。爲此你有自己的配方,你有兩種新穎的做法,首先使用socket.io,這個方法讓每個頁面發佈和訂閱事件,每當一個頁面發出一個事件,另一個頁面自動接收它反之亦然。另一種方法是利用節點本地存儲和緩存系統模塊。對於本地存儲你可以使用memcache,node-cache只是做一個npm搜索。對於快速和直接的緩存,使用redis,redis內存數據結構存儲,用作數據庫,緩存和消息代理。它支持數據結構,例如字符串,散列,列表,集合和帶有範圍查詢的排序集。

編碼快樂:):

+0

只要確保有兩種方法,你應該有某種到位清理邏輯您的交易後,以騰出空間。 – Remario

相關問題