問題タブ [bower]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
node.js - bower コマンドが見つかりません
Macにtwitter bowerをインストールしようとしましたが、使用しました
次に試してみたところbower --help
、出力は でしたbower command not found
。何故ですか?
javascript - Bowerにローカルgitパッケージを登録するには?
bowerにローカルgitパッケージを登録するにはどうすればよいですか?
私の現在のcomponent.jsonは次のとおりです
C:/mypackage
ただし、バージョンがタグ付けされた git リポジトリである、作成したパッケージも追加したいと思います。私がbower install --save C:/mypackage
それを行うと、プロジェクトに正しく追加されますが、私のcomponent.jsonには追加されません。
私は試しbower register mypackage C:/mypackage
ていますが、それは私に与え続けます
私は何を間違っていますか?
jquery - CDN を使用してホストする場合としない場合は?
この質問は、CDN の利点をトレードオフして、より構造化され組織化されたベンダー コード管理を優先する価値があるかどうかを見つけようとしています。
CDN を使用して jquery などのベンダー ライブラリを配信することをお勧めします。
それでも、今日bowerについて読んでいて、不思議に思いました。bower を使用すると、アプリケーションのすべての依存関係を非常に構造化された方法で簡単に管理できます。最終的には、タグ内の html でサーバーになる単一のvendor.js
ファイル (yeoman、brunch、または単純なgruntを使用) にそれらをまとめることができます。script
しかし、このアプローチは私の生活を楽にすることができますが、その短所は何ですか? 次のことが考えられます。
- 私が使用しているライブラリの多くが、ユーザーのブラウザに既にキャッシュされている可能性が高いです。
- すべてを 1 つのファイルにまとめることで
vendor.js
、ブラウザーは最終的にこのファイルをキャッシュしますが、新しいサードパーティの依存関係を追加するたびに、つまりベンダー ファイルが変更されたときに、問題に直面し始めます。ブラウザーはそのファイルをリロードする必要があります (そのため、元の vendor.sj ファイルのキャッシュが失われます)。
このように言えば、HTML 内の依存関係を<script>
タグとして管理するために時間を費やし、縫い合わせによりパフォーマンス/ロード時間を向上させます。
私の考え方に何か問題があると思いますか?say でコードを整理する利点はbower
十分に説得力がありますか? 結局のところ、バックボーンのようなものです。はい、バックボーン アプリは小さなアプリケーションでは重く、より多くのコードが含まれます..しかし、開発者の観点からは、それだけの価値があります!
乾杯(そして、質問を再編集させてくれたコメントに感謝します!)
git - Yeoman のインストールとコラボレーション (たとえば git 経由)
私は yeoman を使用して最初の本格的なプロジェクトを開始していますが、ドキュメントからは理解できない問題に遭遇しました。
私の新しい webapp は、基本の JavaScript として bootstrap-js と lodash を使用しているyeoman install ...
ため、これら 2 つのライブラリに対して使用しました。これにより、両方のライブラリ (および jquery) の github リポジトリ全体components
が、アプリのルートにあるディレクトリとディレクトリにあるディレクトリの 2 つのディレクトリに複製されたようですapp
。
今、これを自分の git リポジトリにコミットしたいと思います。明らかに、依存ライブラリのリポジトリ全体をリポジトリに配置しても意味がありません。最悪の場合、components ディレクトリ内にある min.js ファイルだけを配置することもできます。しかし、依存関係をリストしたファイルを追加し、他のコーダーに yeoman を使用して自分のマシンに依存関係をインストールさせるのが最善だと思います。
それを行う方法はありますか?package.json
それを置く場所かもしれない があるようですが、フォーマットは何ですか? ドキュメントはcomponents.json
Bowerから言及していますが、これがどのように使用できるかは明らかではありません.
何か案は?
javascript - bowerがパッケージを2回インストールするのはなぜですか?
Yeoman(舞台裏ではBowerを使用)を使用してパッケージをインストールすると、bowerが各パッケージを2回インストールすることがわかります。
components
フォルダ の下のプロジェクトのルートの最初のもの- 他の内部
app/components
フォルダ
たとえば、コマンドを実行するとyeoman install jquery
私のプロジェクトディレクトリは次のようになります
- 各コンポーネントに複製があるのはなぜですか?どのコンポーネントを使用する必要がありますか?
- ベストプラクティスは、アプリからこれらのコンポーネントを参照することであり、簡単に更新できるように変更しないことだと思いますが、正しいですか?
javascript - Webの依存関係マネージャー
2つのプロジェクトがあります。それらは同じjs/imgファイルを使用します。最初のプロジェクトでjsコンテンツを変更するときは、2番目のプロジェクトでも変更する必要があります。依存関係にしたい。そこでdeploy
、ローカルリポジトリに変更してから、project1 / project2に移動し、呼び出しupdate
て変更をロードします。
bowerを使用しようとしましたが、奇妙な動作のために満足できません(フォルダーのコンテンツ全体をコピーし、のmain
セクションを無視しますcomponent.json
)
プロジェクトに通常の依存関係管理を実装するにはどうすればよいですか?注:ローカルの依存関係を管理する必要があります
node.js - bowerのデフォルトのコンポーネントフォルダを変更するには?
twitter の bower を使った新しいプロジェクトを作っています。component.json
jquery のようなすべての依存関係を維持するために を作成しました。次にbower install
、すべてを という名前のフォルダーにインストールしますcomponents
。ただし、コンポーネントを別のフォルダーにインストールする必要がありますpublic/components
。
components.json を次のように編集してみました:
また:
https://github.com/twitter/bower/pull/94に示されているように動作しますが、機能しません。
javascript - 部分最適化に RequireJS オプティマイザーを使用する
RequireJS を使用して多数の JavaScript ファイルを最適化しようとしていますが、オプティマイザを使用してスクリプトを適切に構築し、それらをブラウザに適切な方法でロードする方法に頭を悩ませています。
以下の説明は具体的なものですが、他にも多くの人が同じ課題に直面していると思います。(または、彼らは要件でより賢明な選択をしました!)
bowerを使用してスクリプトのカタログをダウンロードしています。これらのスクリプト (またはその一部) を Web ページに含めたいと考えています。
さらに、テスト中は、基本的にブラウザーに個々の bower スクリプトを取得させたくありません。ローカル テスト フレームワークは要求に連続して応答するため、これは非常に低速です。RequireJS オプティマイザーまたはその他の方法を使用して、ダウンロードしたすべての bower スクリプトを 1 つのファイルに結合したいと考えています。
対照的に、私自身のコードは Coffeescript ファイルの長いリストに分割されており、RequireJS CS プラグインを使用してそれらをブラウザー用にコンパイルしたいと考えています。
そのときの開発では、ブラウザが次のようなものをロードすることを期待していました。
components.js
main.js
csmain.coffee
my_module.coffee
これcomponents.js
は、bower のcomponents
ディレクトリにある次のファイルで構成されます。
- jquery: jquery/jquery
- jqueryui:
- jquery-ui/ui/jquery.ui.core
- jquery-ui/ui/jquery.ui.datepicker
- 増幅:
- 増幅/コア/増幅.コア
- 増幅/リクエスト/増幅.リクエスト
- ブートストラップ:
- ブートストラップ/js/ブートストラップ遷移
- ブートストラップ/js/ブートストラップ-アラート
- ブートストラップ/js/ブートストラップボタン
- ブートストラップ/js/ブートストラップ-カルーセル
- ブートストラップ/js/ブートストラップ-折りたたみ
- ロダッシュ:ロダッシュ/ロダッシュ
実稼働環境では、ブラウザーは 1 つのファイル (たとえばall.js
.
私の質問は次のとおりです。RequireJS を使用すると、ブラウザーmain.js
とビルド スクリプトに入り、部分的および完全に最適化されたビルドを実現できます。私はこの問題に不釣り合いなほど多くの時間を費やしましたが、RequireJS からの不可解で不可解なエラーの数は、悲劇的なほど長くなりました。仕事のツールではないようですが、修正していただければ幸いです。
私が持っている最適化スクリプトは次のようなものです (YAML 表記):
私が解決したい問題はかなり単純なようですが、解決策はすぐには見つかりません。RequireJS は素晴らしいものですが、私が必要としているものよりも劇的に複雑です。Almond.jsはモジュールをロードするための代替手段ですが、問題は代替の適切なオプティマイザがないことにあります。
上記を達成するために使用できるオプションr.js
、または代わりにどのような適切な代替最適化ソリューションが存在するかについての考えに感謝します。
github - component.jsonのないバウアーコンポーネント
Bowerで利用可能なコンポーネントを見ると、最初のリポジトリ(accounting.js)に-fileがないようですcomponent.json
。ドキュメントを読むと、これはBowerコンポーネントとして追加するために必要なようです。
これはどのように可能ですか?
編集: component.json-fileを追加するだけでなく、 semver-specification に従う場合にも機能します。ルートに2つのJSファイル(accounting.jsとaccounting.min.js)があるため、これは当てはまらないようです。
yeoman - Yeoman のインストール コンポーネントが失敗する
を実行するyeoman install git://github.com/paperjs/paper.js.git
と失敗します。これは出力です:
「bower:install:git://github.com/paperjs/paper.js.git」の実行 (bower)
タスク バウアー クローニング git://github.com/paperjs/paper.js.git バウアー キャッシング
git://github.com/paperjs/paper.js.git bower fetching paper.js bower
paper.js#39f744de0c117e678b7c663dbf489c55def6f415 バウアーをチェックアウト
コピーする
/Users/my-username/.bower/paper.js/58f9c1c5f33cae79df922c8fde57158c
GET https://bower.herokuapp.com/packages/canvas
<FATAL>
キャンバスが見つかりません</FATAL>
存在しない「キャンバス」モジュールを探しているようです。これを解決する方法についてのアイデアはありますか?
おそらく、 で依存関係として定義されている 'cavas' と関係がありますpackage.json
が、package.json
ファイルはNPM用です。