2011-09-05 167 views

回答

12

首先,你應該看看該模塊文檔的node.js: http://nodejs.org/docs/v0.5.5/api/modules.html

你想包括腳本不是Node.js的模塊,所以你應該做一些改變它。由於node.js中的模塊之間沒有共享的全局範圍,因此您需要添加要訪問到exports對象的所有方法。如果添加此行到您的latlon.js文件:

exports.LatLon = LatLon; 

...你應該能夠訪問LatLon功能是這樣的:

var LatLonModule = require('./lib/latlon.js'); 
var latlongObj = new LatLonModule.LatLon(lat, lon, rad); 
+1

差不多:如果你設置'exports.LatLon' ,你可以用require('./ lib/latlon.js')。LatLon'來獲得它。爲了像你的例子那樣使用'require','latlon.js'需要使用'module.exports = LatLon'來導出它自己。 – s4y

+0

哎呀,我很抱歉 - 謝謝:)我編輯了我的答案。 –

+1

當然。但是,執行'module.exports = LatLon'完全可以,或者跳過將模塊保存到一個變量中,並且一步設置'varLatLon = require('./ lib/latlon.js')。LatLon' - 重新考慮兩種常見模式 – s4y