2016-07-26 84 views
1

我正在使用react和webpack創建漸進式網絡應用程序。 我已經成功配置了一切,並能夠開始開發。 現在,我有很多的輔助功能,如:無法在webpack中使用自定義函數,需要

function getCookie(name) { 
     var start = document.cookie.indexOf(name + "="); 
     var len = start + name.length + 1; 
     if ((!start) && (name != document.cookie.substring(0, name.length))) { 
     return null; 
     } 
     if (start == -1) return null; 
     var end = document.cookie.indexOf(';', len); 
     if (end == -1) end = document.cookie.length; 
     return unescape(document.cookie.substring(len, end)); 
} 

所以,爲了這個,我已經創造了另一個js文件:helper.jsx。 現在我的helper.js包含上面的函數。現在我想在另一個反應組件中使用上述功能。

我做我的部件的要求:

var helper = require("helper"); 

,並試圖通過調用該函數:

helper.getCookie('user'); 

這是給我helper.getCookie是不是一個定義。 請告訴我如何創建一個助手js,並在我的反應組件中使用助手js的功能。

+0

http://stackoverflow.com/questions/5311334/what-is-the-purpose-of-node-js-module-exports -and-how-do-you-use-it – chardy

回答

5

你需要使用module.exports導出功能:

function getCookie(name) { 
     var start = document.cookie.indexOf(name + "="); 
     var len = start + name.length + 1; 
     if ((!start) && (name != document.cookie.substring(0, name.length))) { 
     return null; 
     } 
     if (start == -1) return null; 
     var end = document.cookie.indexOf(';', len); 
     if (end == -1) end = document.cookie.length; 
     return unescape(document.cookie.substring(len, end)); 
} 

module.exports = { 
    getCookie: getCookie 
}; 
+0

Thanx Ori,另一個問題與不同的上下文。我在我的項目中對我的項目的庫文件夾中的一個php文件進行了一些ajax調用。那麼如何讓我的php文件在webpack服務器中執行? –

+0

有沒有什麼辦法可以在webpack服務器中執行php文件?或者,我應該將整個項目包含在不同的服務器中,這個服務器將運行在不同的端口上? –

+0

據我所知你不能在webpack開發服務器中執行php文件,但我沒有碰過PHP中的eons。第二種解決方案應該可以工作,但是你必須在你的PHP服務器上啓用CORS,我真的不知道該怎麼做。 –

相關問題