6

bower コンポーネントから必要なファイルを定義する方法が必要です。コンポーネントではbower.json、必要なファイルがmain設定で指定されていません。ファイルを bower から別のディレクトリ assets ディレクトリにシンボリックリンクまたはコピーする方法が欲しいです。私は Grunt を使用していますが、役立つものは何も見つかりませんでした。を介してすべてのファイルを定義できる方法が欲しいですjson

これが完全にスタックオーバーフローに値するものではない場合はお詫びしますが、車輪の再発明ではなく、存在するものを見つけたいと切望しています。

ここでこのコードを見つけましたが、使用方法がわかりません。これは理想的です。

"dependencies": {
  "font-awesome": ">= 3.2.1"
},
"overrides": {
  "font-awesome": {
    "main": [
      "css/font-awesome.min.css",
      "font/FontAwesome.otf",
      "font/fontawesome-webfont.eot",
      "font/fontawesome-webfont.svg",
      "font/fontawesome-webfont.ttf",
      "font/fontawesome-webfont.woff"
    ]
  }
}
4

3 に答える 3

10

私が個人的にお勧めするのは、アセットを移動するための指示を含む.bowerrcファイルをプロジェクト ルートに 作成することです。postinstall

{
  "scripts": {
    "postinstall": "mv ./bower_components/path/to/my.js ./path/to/ideal/location/my.js"
  }
}
于 2014-07-07T18:04:43.240 に答える
4

grunt-bower-taskを見てください。ドキュメントは、高度な使用法の下でこれを示唆しています:

この時点で「Bower パッケージ」=「その git リポジトリ」です。これは、パッケージにテスト、ライセンスなどが含まれていることを意味します。Bower のコミュニティでは、この問題について活発に議論されています (GitHub の問題 #46、#88、Google グループで)。そのため、このプロジェクトに影響を与えた blittle/bower-installer などのツールを見つけることができます。

わかりました。./lib ディレクトリに「メイン」ファイル以外のファイルが必要な場合は、bower.json に「exportsOverride」セクションを追加します。

{
  "name": "simple-bower",
  "version": "0.0.0",
  "dependencies": {
    "jquery": "~1.8.3",
    "bootstrap-sass": "*",
    "requirejs": "*"
  },
  "exportsOverride": {
    "bootstrap-sass": {
      "js": "js/*.js",
      "scss": "lib/*.scss",
      "img": "img/*.png"
    },
    "requirejs": {
      "js": "require.js"
    }
  }
}

grunt-bower-task が残りを行います。

于 2013-10-08T20:25:25.320 に答える
2

bower-installerGrunt を使用していない人にとっては興味深いかもしれません。

CSS ファイルは相対パス (例: ) を使用しているため、Font Awesome では追加の処理が必要でした../fonts/

{
  "dependencies": {
    ...
  },
  "install": {
    "path": "webroot/components",
    "sources": {
      "font-awesome": {
        "mapping": [
          {"bower_components/font-awesome/css/font-awesome.css": "font-awesome.css"},
          {"bower_components/font-awesome/fonts/fontawesome-webfont.eot": "../fonts/fontawesome-webfont.eot"},
          {"bower_components/font-awesome/fonts/fontawesome-webfont.svg": "../fonts/fontawesome-webfont.svg"},
          {"bower_components/font-awesome/fonts/fontawesome-webfont.ttf": "../fonts/fontawesome-webfont.ttf"},
          {"bower_components/font-awesome/fonts/fontawesome-webfont.woff": "../fonts/fontawesome-webfont.woff"},
          {"bower_components/font-awesome/fonts/FontAwesome.otf": "../fonts/FontAwesome.otf"}
        ]
      }
    }
  }
}
于 2014-09-28T08:55:18.603 に答える