Vue 大画面データ表示例

Vue 大画面データ表示例

効率的に要件を満たし、コンポーネント ライブラリの肥大化や車輪の再発明を避けるために、私は以前、大画面ディスプレイ プロジェクトを数多く行ってきました。今日は、大画面の実際のプロセスを皆さんと共有したいと思います。最初は、データビュー コンポーネント ライブラリを使用していましたが、その後、カプセル化されたコンポーネントはそれほど多くは必要ないことがわかりました。また、モバイル側では、スタイルの混乱という問題がありました。そこで、彼の実装方法を参考にして、大画面対応のコンポーネントを作りました。では、早速レンダリングを見てみましょう。

レンダリング

あらゆるサイズの大型ディスプレイ画面に適応する必要があり、携帯電話では効果を拡大したり縮小したりして表示できます。変形せずに全体的に適応する効果を実現するために、ボディを比例して拡大縮小するコードをここに追加しました。

 <スクリプト>
        //ページの拡大縮小 public function resizePage() {
          // ウィンドウの高さを取得します var clientW = window.innerWidth
          var clientH = window.innerHeight
          // 初期ウィンドウ対ボディ比 var bi = clientW / 1920
          // 本文の幅と高さを設定します - 実際の状況に応じて調整できます document.getElementsByTagName('body')[0].style.width = "1920px"
          document.getElementsByTagName('body')[0].style.height = "1080px"
          document.getElementsByTagName('body')[0].style.transform = 'scale(' + bi + ',' + bi + ')'
          document.getElementsByTagName('body')[0].style.transformOrigin = '左上 0'
          
        }
        ページサイズを変更する()
        // ページのサイズを変更します。
        window.onresize = 関数 () {
          タイムアウトを設定します(()=>{
          ページのサイズを変更します。

          },200)  
        }        
    </スクリプト>

コード実装:

大画面の背景画像と全体的な効果を設定できる、適応型の大型コンポーネントをカプセル化します。残りは、特別にカスタマイズされたアイコンは必要ないため、基本的に echart コンポーネント ライブラリを使用します。したがって、パーソナライズはあまり行われません。

<テンプレート>
  <div id="dv-full-screen-container">
    <テンプレート>
      <スロット></スロット>
    </テンプレート>
  </div>
</テンプレート>

<スクリプト>
エクスポートデフォルト{
  
  マウントされた(){
  }
}
</スクリプト>

<スタイル lang="less">
#dvフルスクリーンコンテナ{
  位置: 固定;
  上: 0px;
  左: 0px;
  オーバーフロー: 非表示;
  変換の原点: 左上;
  zインデックス: 999;
  幅:100%;
  高さ:1080pxee
}
</スタイル>

<テンプレート>
  <div class="full">
    <dv-フルスクリーンコンテナref="full">
       コンテンツ
    </dv-フルスクリーンコンテナ>
  </div>
</テンプレート>
<スクリプト>
 
'./fullscreen' から fullScreenContainer をインポートします。
エクスポートデフォルト{
  コンポーネント:{
    'dv-フルスクリーンコンテナ':fullScreenContainer
  },
  マウントされた(){
   
  },
  作成された(){
  },
  方法:{
    
  }
}
</スクリプト>
<スタイル lang="less">
。満杯 {
  #dvフルスクリーンコンテナ{
    背景:#000222 url(../assets/images/bg.png);
    背景サイズ: 100% 100%;
    オーバーフロー:自動;
    
    .full-big-border {
      。コンテンツ {
        パディング: 0 38px 0 38px;
        幅: calc(100% - 76px);
        ディスプレイ: フレックス;
      }
    }
  }
  
}
</スタイル>

要約:

以上が、大画面への全体的な適応を自分で実現する効果と方法です。最初は面倒くさがってデータビューを直接使用したいかもしれませんが、必要なときに実現するのが難しい場合や、肥大化したコンポーネントライブラリのセットをインストールしたい場合など、強迫性障害を和らげるのが難しい場合があります。もっと良いカプセル化方法があればいいのですが。私は表面のほんの少しだけ実装しましたが、これから始める学生の役に立つことを願っています。

Vue 大画面データ表示例の記事はこれで終了です。Vue 大画面データに関するより関連性の高いコンテンツについては、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き閲覧してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • vue+echarts+datav 大画面データ表示と中国地図の省、市、郡のドリルダウン機能の実装
  • vueはデータの問題を修正し、リアルタイムで操作を表示します
  • VueでdataV大画面を使用する方法

<<:  ウェブサイトのパフォーマンスを向上させるためのコンテンツ関連の10の原則

>>:  DOCTYPE宣言の機能と使い方の詳しい説明

推薦する

Windows での MySQL 5.7.18 インストール チュートリアル

この記事では、圧縮パッケージから MySQL をインストールする方法について説明します。 1. My...

JavaScript のフラット配列をツリー構造に変換する例

目次バックグラウンドで10,000個のデータが失われた再帰法非再帰的方法要約するバックグラウンドで1...

TypeScript の Enum が問題となる理由

目次どうしたの?いつ使うか列挙の数を制御するビット値コントロールインデックス非数値列挙結論はType...

xHTML タグと HTML タグの違いは何ですか?

すべてのタグは小文字でなければなりませんXHTML では、すべてのタグは小文字でなければなりません。...

Linux サーバー上で nvidia-docker 環境を設定するプロセスの詳細な説明

Docker はコンテナに相当し、必要な動作環境に応じて対応する動作環境を構築できます。このとき、各...

LinuxベースのSelenium環境を構成し、操作を実装する

1. Linux で Selenium を使用する1. Chromeをインストールする次のコマンドを...

WeChatアプレットコンポーネントライフサイクルの落とし穴の記録

通常、コンポーネントのライフサイクルは、ビジネス ロジックが始まる場所です。ビジネスシナリオが複雑で...

CSS3のtransform属性で実装される4つの機能

CSS3 では、transform 関数を使用して、テキストや画像の回転、拡大縮小、傾斜、移動という...

JS はシンプルなブロック崩しピンボールゲームを実装します

この記事では、ブロック崩しピンボールゲームを実装するためのJSの具体的なコードを参考までに紹介します...

HTML の色に関する参考資料

HTML では、色は 2 つの方法で表現されます。 1 つは、青の場合は blue のように色の名前...

Linuxシステムにおける仮想デバイスファイルのさまざまな実用的な使用法の詳細な説明

みなさんこんにちは。私は梁旭です。ご存知のとおり、Linux ではデバイス ファイルも含めすべてがフ...

aタグのname属性とid属性を使用してページ内を移動する方法

以前はaタグのname属性を使ってジャンプする方法しか知らなかったのですが、idも使えることを今日知...

MySQL 結合クエリ構文と例

接続クエリ:これは、2 つのクエリ (またはテーブル) の各行をペアで接続した結果です。つまり、1 ...

Virtualbox で Ubuntu 16.04 の起動時に共有ディレクトリを自動的にマウントする最良の方法

仮想マシンを使用する人は通常、操作と使用を容易にするために仮想マシン用の共有ディレクトリを設定します...

border-radiusは要素に丸い境界線を追加する方法です

border-radius:10px; /* すべての角は半径 10px で丸められます*/ bor...