問題タブ [grunt-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.

0 投票する
1 に答える
85 参照

javascript - Browserify と Babelify で {classname} が定義されていないというエラーが表示される

この TS ファイルを考えると:

次のような Grunt タスクで変換しています。

次のような単純な HTML ファイルを実行します。

その結果、Uncaught ReferenceError: Rob is not defined

SO でこのような質問をいくつか見たことがありますが、それらは文脈の誤用に関連しているように見えました (たとえば、これが適切でない場合に、これを何かに使用したり、これを何かに使用したりしないなど)。ここでは文脈は関係ありません。コンソールに console.log を表示したいだけです。

package.jsonはこのように見えます:

私の手順は

  • 核兵器node_modules
  • 実行npm install(警告またはエラーなし)
  • 実行grunt rob(警告またはエラーなし)

これにより、次のスニペットを含む、私が望むものについて私の目に見えるJSファイルが出力されます。

また、Chrome は正常に読み込まれたrob.jsことを通知し、HTML ページが読み込まれるとソース エクスプローラーでコンテンツを確認できます。

私の質問は単純です: なぜこの例で参照エラーが発生するのですか?

編集:受け入れられた回答への少しの追加として:tsを編集して自分自身を呼び出す場合(独自のエントリポイントとして機能するため):

その後、すべてが正常に実行されます-これは私のユースケースにぴったりです。