v-viewer と vue を組み合わせてアルバムをプレビューする
最近、写真をアルバムごとに表示するアルバム管理システムを構築する必要があり、フロントエンドにvue、バックエンドにtp5を使って小規模なシステムを構築しました。
フロントエンドは v-viewer コンポーネントを使用します。問題が発生したのでここに記録しました。つまり、画像をプレビューするときに、画像が動的に読み込まれるため、プレビュー中に動的に更新され、デフォルトで最初の画像にジャンプします。図に示すように、解決策はプレビュー中の再更新を防ぐことです
具体的な手順は次のとおりです:
1. まず vue プロジェクトを作成しますそして、vue Scaffolding を使用してそれを作成します (理解できない場合は、ここでは説明されていませんが、公式ドキュメントを確認してください)
2. v-viewer コンポーネントをページに導入します
import 'viewerjs/dist/viewer.css' import Viewer from 'v-viewer/src/component.vue'
3. メソッドを呼び出し、テンプレート ファイルに次のコードを記述します。
<viewer :images="images" class="images clearfix" @inited="handleInited"> <template slot-scope="scope"> <img v-for="(src,i) in scope.images" :src="src" :key="src" :class="'image ' + newClass[i] " @click="handleShow(i)"> </template> </viewer>
画像は配列で渡され、各項目は画像のパス URLです。バックエンドである限りインターフェースでデータを取得し、画像のURL配列を画像に代入し、画像を一括で取得すれば問題ありません。写真が大量にある場合、通常、バックエンドはページングによって写真を取得しますが、このとき、すべての写真が読み込まれるまで待つ必要があり、プレビューが最初の写真にジャンプしません。この問題を解決するには、コンポーネントを確認する必要があります。内部的にはどのように対処すればよいでしょうか? コードを確認したところ、監視対象の画像の変更の動的更新をコメントアウトするだけでよいことがわかりました。
watch: { images () { // this.$nextTick(() => { // this.onChange() // }) },
と画像がクリックされたときに update メソッドを呼び出します。次のコードを参照してください
handleShow(index) { this.$viewer.update() this.$viewer.view(index) // 预览当前图片 }
概要: 特定の問題が発生した場合、特定の分析が必要となり、場合によっては問題を解決するためにソース コードの変更が必要になります; (ご質問がある場合は、ご相談ください。お申し込みの際はメモしてください。WeChat ID: 13163923579)
以上がv-viewer と vue を組み合わせてアルバムをプレビューするの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









json.parse()stringにオブジェクトを使用することは、最も安全で効率的です。文字列がJSON仕様に準拠していることを確認し、一般的なエラーを回避します。 Try ... CATCHを使用して例外を処理して、コードの堅牢性を向上させます。セキュリティリスクがあるeval()メソッドの使用は避けてください。巨大なJSONの弦の場合、パフォーマンスを最適化するために、チャンクされた解析または非同期解析を考慮することができます。

Vue.jsは、主にフロントエンド開発に使用されます。 1)ユーザーインターフェイスとシングルページアプリケーションの構築に焦点を当てた軽量で柔軟なJavaScriptフレームワークです。 2)Vue.jsのコアはその応答性データシステムであり、データが変更されるとビューは自動的に更新されます。 3)コンポーネントの開発をサポートし、UIを独立した再利用可能なコンポーネントに分割できます。

Vue.jsは、特にJavaScriptファンデーションを持つ開発者にとって、学ぶのは難しくありません。 1)その進歩的な設計とレスポンシブシステムは、開発プロセスを簡素化します。 2)コンポーネントベースの開発により、コード管理がより効率的になります。 3)使用例は、基本的および高度な使用法を示しています。 4)一般的なエラーは、vuedevtoolsを介してデバッグできます。 5)V-IF/V-Showや重要な属性を使用するなど、パフォーマンスの最適化とベストプラクティスは、アプリケーションの効率を向上させることができます。

VUE.JSは、中小規模のプロジェクトや迅速な反復に適していますが、Reactは大規模で複雑なアプリケーションに適しています。 1)Vue.jsは使いやすく、チームが不十分な状況やプロジェクトスケールが小さい状況に適しています。 2)Reactにはより豊富なエコシステムがあり、高性能で複雑な機能的ニーズを持つプロジェクトに適しています。

HTMLテンプレートのボタンをメソッドにバインドすることにより、VUEボタンに関数を追加できます。 VUEインスタンスでメソッドを定義し、関数ロジックを書き込みます。

vue.jsでBootstrapを使用すると、5つのステップに分かれています。ブートストラップをインストールします。 main.jsにブートストラップをインポートしますブートストラップコンポーネントをテンプレートで直接使用します。オプション:カスタムスタイル。オプション:プラグインを使用します。

この記事では、vue.jsでツリーシェーキングを使用して未使用のコードを削除し、ES6モジュールを使用したセットアップ、Webパック構成、および効果的な実装のためのベストプラクティスの詳細について説明します。

この記事では、さまざまなビルドターゲットにVue CLIを構成し、環境を切り替え、生産ビルドを最適化し、デバッグ用のソースマップを確保する方法について説明します。
