我創建了一個節點模塊,它基本上只是一些有用的JS,也可以用於客戶端。我知道require.js可以加載common.js組件,但我不一定要制定一個使用我的模塊客戶端的每個人都需要require或common.js或其他東西的任務。我也不想強迫他們刪除文件底部的module.exports = ...
。其他人如何解決這個問題?你只是創建2個版本,或2個「編譯」版本? module.exports工作到處嗎?module.exports客戶端端
18
A
回答
16
4
這對我(的CoffeeScript)工作。假設「命名空間」就是你要索賠的window
範圍內爲客戶
(module ? {}).exports = @Namespace =
my: 'cool'
module: '!'
然後你就可以在瀏覽器中使用Node.js的require('namespace').my === 'cool'
或Namespace.my === 'cool'
什麼。這轉化爲JS作爲
(typeof module !== "undefined" && module !== null ? module : {}).exports = this.Namespace = {
my: 'cool',
module: '!'
};
1
我覺得這是簡單的:
try {
module.exports = exports = MyModule;
} catch (e) {}
這個文件可以包含在瀏覽器和node.js中都
相關問題
- 1. Java:服務器/客戶端 - >客戶端/客戶端
- 2. jQuery客戶端端
- 3. Elasticsearch傳輸客戶端Java客戶端
- 4. WCF客戶端和非WCF客戶端
- 5. 客戶端到客戶端的連接?
- 6. 獲取客戶端IP的客戶端
- 7. 胖/胖客戶端與瘦客戶端
- 8. Windows客戶端與Web客戶端
- 9. 富Web客戶端與瘦客戶端
- 10. 帶客戶端的Android客戶端Python
- 11. 溫莎WCF多客戶端客戶端
- 12. SSH客戶端端口
- 13. GWT客戶端端rest API
- 14. 路由器客戶端端
- 15. OpenJMS - 客戶端端口號
- 16. SocketPermission - 客戶端端口?
- 17. 綁定RadListView客戶端端
- 18. TFS客戶端,GIT後端?
- 19. asp.net驗證客戶端或客戶端或服務器端
- 20. Phpmyadmin Mysql網絡客戶端和終端客戶端的差異
- 21. 客戶端與客戶端與雲端點的通信
- 22. 在客戶端
- 23. 在客戶端
- 24. 從客戶端
- 25. 在客戶端
- 26. 在客戶端
- 27. 在客戶端
- 28. 客戶端Cookie
- 29. 在客戶端
- 30. Javascript:DLNA客戶端
關於這個問題我知道的最好的博覽會是http://www.2ality.com/2011/11/module-gap.html。作者討論了優勢/劣勢和開發/部署模式。 –