問題タブ [angularjs-1.5]
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 - クロスブラウザー互換の JavaScript を使用して PDF をダウンロードする
Chrome で AngularJS を使用して PDF をダウンロードできますが、これは最新の FireFox、Internet Explorer 11、または Edge では機能しないようです ( IE10でも機能しないと仮定します) 。誰かが意見を持っている場合、これがこれに最適なシムかどうかはわかりませんが、現在は機能していないようです. 念のため、応答タイプをblob
andにしてみarraybuffer
ましたが、違いはありません。
これはすべて、Blob URL の使用についてcaniuseが示していることに反論します。IE9以降、およびFFの最後の2つのバージョンでこれが機能している人はいますか?私が間違っていることを指摘できますか?
アップデート
現在、最良の (唯一の) 回答は IE10、11、Edge、FF で機能し、引き続き Chrome で機能します。誰かが別のポリフィル/シム/その他/などを持っている場合、IE9はこのソリューションを使用して機能しません.Safariはダウンロード属性をサポートしていないため、現在のページをリダイレクトするだけなので、選択した回答のソリューションはSPAでは機能しませんそのため、どちらの場合も TODO スタブを残しました。
これは、投稿された回答の更新であり、IE9 と Safari が期待どおりに動作するように、誰でも使用または追加できるようにコメントに追加された情報が追加されています。
.net - AngularJS 1.3 ディレクティブを 1.5 コンポーネントに変換すると、サイレントに失敗する
.net に組み込まれた Angular 1.3 プロジェクトを typescript を使用して 1.5 コンポーネントに変換しています。
可能な限り単純な形に煮詰めたディレクティブがあります。ディレクティブは次のようになります。
コンポーネントに変換すると、次のようになります。
コンポーネントは、実際の .Net プロジェクトでサイレントに失敗します。テンプレートも console.log ステートメントも、何もレンダリングされません。これは同じ ts ファイルにあるため、tsc の問題でもバンドルの問題でもないことがわかっています。ファイルをロードしています。プロジェクトでAngular 1.5.7が実際に実行されていることをangular.versionで確認しました。ここに見られるプランカーで動作するため、コンポーネントコード自体の問題ではないと思います。
https://plnkr.co/edit/W8cR69O9BWWnTcwK1e0a?p=preview
しかし、実際のプロジェクトでは、まったく何もしないだけで、コンポーネントをロードするためにチェックまたは編集する場所が他にどこにあるのか途方に暮れています。
ページのソースを確認すると、読み込まれているファイルが表示され、同じコードが含まれています。
問題が発生している場所を明確にするために編集します。