最近、電子アーカイブに取り組んでおり、バックエンドではファイルの Huawei Cloud OSS リンクを提供しています。クリックしてファイルをダウンロードする機能が実装されました。しかし、彼らは、通常のファイルをダウンロードせずに直接プレビューできることを望んでいます。 論理的に言えば、ファイルのオンラインプレビューを行うには、サードパーティのサービスを購入し、そのサービスをバックエンドに展開し、フロントエンドに接続するだけで、すべて完了します。 方法1Microsoft Office Online でオンラインプレビュー https://view.officeapps.live.com/op/view.aspx?src=ファイル アドレス 例: 方法2docxクラウドサービスのオンラインプレビューを使用します。使用方法はMicrosoftと同様です。 前提として、バックエンドによって提供されるファイル アドレスは、パブリックにアクセス可能なリンクである必要があります。たとえば、ここではファイルを Huawei Cloud にアップロードします。ファイルは表示のみ可能で、編集はできません。 効果は以下のとおりです コードについて <!-- プレビュー アイコン --> <i v-if="row.doc_url && canPreviewList.includes(row.doc_ext)" スタイル="font-weight: bold;font-size:16px;" クラス="link-type el-icon-view" @click.stop="previewFileEvent(行)" /> プレビューファイルイベント(行) { const typeArr = ['doc', 'docx', 'ppt', 'pptx', 'xls', 'xlsx'] url = '' とします (typeArr.indexOf(row.doc_ext) !== -1) の場合 { // Microsoft Office Online を使用する url = 'http://view.officeapps.live.com/op/view.aspx?src=' + row.doc_url } それ以外 { url = 行.doc_url } // window.open() は中央に開きます const width = 1000; const height = 800 定数 top = (window.screen.availHeight - 高さ) / 2 定数 左 = (window.screen.availWidth - 幅) / 2 window.open(url, '', 'width=' + width + ',height=' + height + ',top=' + top + ',left=' + left) } Microsoft が提供するサービスを利用しています。 「doc」、「docx」、「ppt」、「pptx」、「xls」、「xlsx」ファイルを開くために使用できます。 ここで問題があります。ブラウザで直接開くと、txt ファイルが文字化けします。ダウンロードは正常でしたが、解決策は見つかりませんでした。 txt ファイルが文字化けする原因が判明しました。これはブラウザのエンコード形式に関連しています。 ここにある txt ファイルは utf-8 エンコードで保存されています。しかし、デフォルトのブラウザは Google Chrome ではありません。 正常に表示するには、対応するエンコード形式に変更する必要があります。 Google Chromeのエンコード形式を変更するには、App Storeから公式プラグイン「Set Character Encoding」をインストールする必要があります。 これで、Office ファイルのオンライン プレビューを実現するための Vue のサンプル コードに関するこの記事は終了です。Office コンテンツの Vue オンライン プレビューの詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: Centos7 に Docker をインストールします (2020 の最新バージョンが利用可能、コピーして貼り付けるだけ)
2018 年の最新 MySQL 5.7 の詳細なインストールと設定は 4 つのステップに分かれており...
Mavenパッケージを解凍する tar xf apache-maven-3.5.4-bin.tar....
WeChatアプレットでタブバーを設定すると、重要なコンテンツがブロックされ、iPhoneXなどの異...
障害の説明percona5.6、mysqldump フルバックアップ、バックアップデータのインポート...
序文部門テーブルなどのデータベース内のツリー構造データの場合、部門のすべての従属部門または部門のすべ...
1. インデックス不足または無効なインデックスによるクエリの遅延数千万件のデータを含むテーブルで、イ...
Mysql5.7.19バージョンは今年リリースされた新しいバージョンです。最近のMySQLのバージ...
この記事は主にMysql一時テーブルの原理と作成方法を紹介します。この記事のサンプルコードは非常に詳...
XMeter API は、以下のサービスを含む、JMeter に基づくワンストップのオンライン イン...
1. 圧縮と包装の概要一般的な圧縮ファイルウィンドウズ .rar .zip .7z Linux .z...
タイトルの通り、高さは既知で、左と右の列の幅は 300 ピクセル、中央は適応型です。弾性ボックス自体...
この記事では、入力ボックスコンポーネントを手動で実装するための具体的なコードを参考までに紹介します。...
mysql maxとwhereの間の実行の問題SQLを実行します: テーブル「grades」を作成し...
この記事では、シンプルなショッピングカートを実装するためのJavaScriptの具体的なコードを参考...
操作効果コードの実装html <div id="ウォッチ"> <...