問題タブ [tree-shaking]

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 に答える
1421 参照

webpack - ツリーの揺れが機能しない - webpack 4 および uglifyjs-webpack-plugin

Webpack ドキュメントに従って、UglifyJSPlugin を Webpack 4 プロジェクトに追加しようとしましたが、まだデッド コードが表示され、バンドル内にコメントが表示されているため、uglify プラグイン構成が使用されていないと思います。

プロジェクトへのリンク

ドキュメントには、「ツリー シェーキングを利用するには、次のことが必要です...
- ES2015 モジュール構文を使用します (つまり、インポートとエクスポート)。完了
- プロジェクトの package.json ファイルに「sideEffects」エントリを追加します。完了.
-デッド コードの削除をサポートするミニファイアを含めます (UglifyJSPlugin など)。" 終わり

それでも、未使用/未インポートの leftpad 関数とコメントは私のバンドルに含まれています。

すべての設定はここで見ることができます。私が見ている結果に基づいて、これは私の webpack 構成のuglify 設定に関連していると思われます。

再現するには、リポジトリをプルして実行しますyarn build

0 投票する
0 に答える
412 参照

angular - angular cliアプリでのツリーシェイクモナコエディター

angular アプリで monaco-editor (vscode エディター) を使用したいと考えています。彼らのドキュメントで、このプロジェクトをツリー シェーキングで効率的にロードするための推奨される方法は、コミュニティの webpack プラグインである monaco-editor-webpack-plugin を使用することであることに気付きました。

残念ながら、これは、私がやりたいことではない角度のある webpack 構成を取り出さないと不可能です。

また、amd のバージョンが 2MB であることにも気付きました。これは Web アプリとしては膨大です。

monaco-editor (tree-shaking) で実際に使用されているソース コードのみをコンパイルしてバンドルする angular cli を使用する方法はありますか?

angular6を使用しています。

ありがとう。