問題タブ [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.
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を編集して自分自身を呼び出す場合(独自のエントリポイントとして機能するため):
その後、すべてが正常に実行されます-これは私のユースケースにぴったりです。