問題タブ [browserify]
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.
gruntjs - 複数の grunt-browserify バンドルで相対パスのエイリアスを管理するにはどうすればよいですか?
これは少し長いですが、私の混乱を説明するためにコード例が必要です。その後、次の回答に興味があります。
require('module')
またはの代わりにどのように使用しますrequire('../../src/module')
かrequire('./module')
?- 作業を複製せずに再利用
./index.js
するにはどうすればよいですか? (そして、エントリーモジュールであるため、実行をspec/specs.js
防ぎます)。src/app.js
私はすでにいくつかのブラウザー ベースのプロジェクトを開始しており、browserifyと grunt が大好きです。しかし、各プロジェクトは私の開発/学習曲線の同じ時点で終了します。ミックスにテストを追加し、2 つのbrowserifyバンドル (app.js
およびspec/specs.js
) を管理する必要があると、システム全体が崩壊します。説明します:
grunt-browserifyを使用して、初期ディレクトリを設定します。
- 1 つのエントリ ファイル ( ) を使用し、コード ウォークを実行して必要なすべてのモジュール
src/app.js
をバンドルします。 - エイリアスに browserify-shim を使用し
jquery
ます。 - シムなしでエイリアスされているだけ
jquery-ui
です( you の後に必要ですvar $ = require('jquery')
)。 - すべてのヘルパー ファイルとスペック ファイル
spec/src
をエントリ モジュールとして使用します。
構成をステップ実行します。
幸せ
jquery を追加します。
幸せ
仕様を追加します。
悲しい
要約すると、どうすれば...
- または?
require('module')
の代わりに使用します。require('../../src/module')
require('./module')
- 作業を複製せずに
./index.js
再利用できますか? (そして、エントリーモジュールであるため、実行をspec/specs.js
防ぎます)。src/app.js
javascript - Grunt Browserify - require.resolve は関数ではありません
次の方法でgrunt-browserifyを使用しています。
通常は正常に動作していますが、まだ問題があります。コードの一部で、次のrequire
ようなノード モジュールを使用しています。
そして、私は次のエラーが発生しています:require.resolve is not a function
grunt タスクでエイリアスを使用してグローバルな require を公開しようとしました:
require
変数を関数として公開しますが、require.resolve
またはmodules
メソッドをまだ使用できません。
また、grunt に移行する前にファイルに使用Cakefile
していたことにも言及する必要がありますBrowserify
そして、このようにして正常に動作しており、使用できますrequire.resolve
。require.modules
何らかの理由で、このようにbrowserifyが各エントリファイルの先頭にこれらのメソッドを追加しているためです。
node.js - DDP、Node、および Chrome Browserify
Chrome 拡張機能でddpおよびbrowserifyパッケージを使用して、ddp クライアント経由で Meteor アプリと通信しています。
ただし、接続をインスタンス化すると、次のエラーが発生します。
これは、new Websocket(uri='ws://localhost:3000/websocket', protocols={})
DDP (WebSocket) プロトコルで meteor.com でホストされているアプリにアクセスする方法で同様のエラーが表示されますか? 、しかし、ポートを443に変更する必要があった解決策は機能しませんでした.
誰にも回避策がありますか?
javascript - jQuery >= 2 で Browserify を実行すると、「jQuery にはドキュメントを含むウィンドウが必要です」というメッセージが表示されます
私は browserify を使用して、CommonJS スタイルの依存関係を使用してフロントエンドの JavaScript をバンドルしています。たとえば、私は持っています:
ただし、browserify が依存関係をバンドルすると、次のコンソール エラーが発生します。
jQuery コードを見るとthis
、 globalに使用しようとしていることがわかりwindow
ます。
browserify はすべての依存関係をラップするため、this
はobject
ではなくwindow
です。
興味深いのは、jQuery >= 2 が CommonJS と互換性があることです。ただし、問題は、browserify が依存関係をラップする方法です。誰かがこの問題を解決しましたか?
javascript - 最初にビルド プロセスを実行せずに Browserify を使用してスクリプトを実行する
http://javascriptplayground.com/blog/2013/11/backbone-browserify/Browserify
のような多くの記事を読みましたが、常に以下のようなステップがあります:
これは、ブラウザでスクリプトを実行して動作を確認する前に行われているようです。コードを変更するたびにビルドする必要がない方法はありますか? 機能に似たもの...define()
requirejs
javascript - socket.io クライアントはグローバル スコープに存在する必要がありますか?
私はM
、socket.io クライアントを依存関係として含む、browserify によって作成されたモジュール (たとえば ) を使用しています。M
AMD アプリケーション内で使用されています。上記のアプリ内でM
、ソケット クライアントへの接続呼び出しを発行し、選択されたトランスポートが jsonp-polling の場合、jsonp コールバックを実行しようとすると、ReferenceError: io is undefined
. io
グローバルではなく、 module 内にラップされているため、これは私にとって完全に理にかなっていますM
。
だから私の質問は、グローバルスコープに存在するio
必要がありますか? io
グローバルスコープに追加せずにコールバック配列にアクセスできるようにする方法はありますか?
免責事項- サンプルコードを提供していないことを感謝しますが、実装と実行が簡単な適切なモック例を作成するのに苦労しています. 質問が本当に意味をなさない場合は、私に知らせてください。何かをまとめることができるかどうかを確認しますが、誰かが答えられると思う場合、またはコードを見ずに正しい方向に向けてください。 !