[英]Same module/package for Bower and npm
有沒有一種方法可以編寫可以同時發布到npm和Bower的單個模塊/程序包,而不必復制文件?
假設您有一個簡單的JS文件,其中包含一些自包含的代碼(即,它沒有任何外部依賴項)。
理想的目錄如下所示:
/file.js
/package.json
/bower.json
這種情況下的問題是,要與npm配合使用的“ module.exports
”將需要module.exports
語句,而Bower則無法使用。
那么,有沒有辦法避免產生兩個單獨的幾乎完全相同的文件?
這似乎是迄今為止最好的選擇(受Angular團隊的啟發)。
在項目根目錄中創建一個index.js
文件,內容如下:
module.exports = require('your-original-module.js');
然后,在package.json
添加以下行:
"main": "index.js",
簡單但有效!
如果您的模塊不依賴於其他npm模塊,則可以使用以下命令提供文件(將其稱為“ bowerify.js”)
window.MyUtility = require('./file');
將您的實用程序顯示為全局變量。
然后使用browserify為瀏覽器打包代碼:
src: 'bowerify.js',
dest: 'my_bower_module.js'
現在,您可以使用bower安裝my_bower_module.js。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.