Vue写真閲覧コンポーネントv-viewerの使い方分析【回転、スケーリング、反転などの操作に対応する】
5496 ワード
本論文の実例は、Vue画像閲覧コンポーネントv-viewerの使い方を説明する。皆さんに参考にしてあげます。具体的には以下の通りです。
v-viewer
画像閲覧用のVueコンポーネントは、回転、拡大縮小、反転などの操作をサポートし、view.jsに基づいています。
0.xから移動
あなたがしたい唯一の変更は、スタイルファイルを手動で導入することです。
npmコマンドでインストール
v-viewerおよび必要なcssスタイルを導入して、Vue.use()を使ってプラグインを登録してから使えます。
v-viewerコマンドを任意の要素に追加するだけでいいです。この要素の下の全ての要素はviewerによって自動的に処理されます。
このように構成項目に入ることができます。v-viewer=「{inline:true}」
必要があれば、まず選択器でターゲット要素を探して、el.viewerでviewerのインスタンスを取得することができます。
static
修飾器を追加すると、viewerの作成は要素バインディング命令時に一回だけ行います。
要素内の画像が再び変化しないことを確認したら、不必要な再構成動作を避けることができます。
フルスクリーンコンポーネントを単独に導入して、部分的に登録してもいいです。
アクティブドメインスロットを使って、あなたの写真の展示方法をカスタマイズします。
initedイベントを傍受してviewerのインスタンスを取得するか、またはthis.refs.xxx.viewerという方法を使用することもできます。
view.jsを参照してください。
プラグインの設定項目
name Type:String Default:view 名前の衝突を避ける必要があるなら、このように紹介してもいいです。 Type:Object Default:undefined view.jsのグローバルデフォルトの設定項目を変更したいなら、このように紹介してもいいです。
v-viewer
画像閲覧用のVueコンポーネントは、回転、拡大縮小、反転などの操作をサポートし、view.jsに基づいています。
0.xから移動
あなたがしたい唯一の変更は、スタイルファイルを手動で導入することです。
import 'viewerjs/dist/viewer.css'
インストールnpmコマンドでインストール
npm install v-viewer
使用v-viewerおよび必要なcssスタイルを導入して、Vue.use()を使ってプラグインを登録してから使えます。
<template>
<div id="app">
<!-- directive -->
<div class="images" v-viewer>
<img src="1.jpg">
<img src="2.jpg">
...
</div>
<!-- component -->
<viewer :images="images">
<img v-for="src in images" :src="src" :key="src">
</viewer>
</div>
</template>
<script>
import 'viewerjs/dist/viewer.css'
import Viewer from 'v-viewer'
import Vue from 'vue'
Vue.use(Viewer)
export default {
data() {
images: ['1.jpg', '2.jpg']
}
}
</script>
命令の形で使うv-viewerコマンドを任意の要素に追加するだけでいいです。この要素の下の全ての要素はviewerによって自動的に処理されます。
このように構成項目に入ることができます。v-viewer=「{inline:true}」
必要があれば、まず選択器でターゲット要素を探して、el.viewerでviewerのインスタンスを取得することができます。
<template>
<div id="app">
<div class="images" v-viewer="{movable: false}">
<img v-for="src in images" :src="src" :key="src">
</div>
<button type="button" @click="show">Show</button>
</div>
</template>
<script>
import 'viewerjs/dist/viewer.css'
import Viewer from 'v-viewer'
import Vue from 'vue'
Vue.use(Viewer)
export default {
data() {
images: ['1.jpg', '2.jpg']
},
methods: {
show () {
const viewer = this.$el.querySelector('.images').$viewer
viewer.show()
}
}
}
</script>
指令修飾器static
修飾器を追加すると、viewerの作成は要素バインディング命令時に一回だけ行います。
要素内の画像が再び変化しないことを確認したら、不必要な再構成動作を避けることができます。
<div class="images" v-viewer.static="{inline: true}">
<img v-for="src in images" :src="src" :key="src">
</div>
コンポーネントで使うフルスクリーンコンポーネントを単独に導入して、部分的に登録してもいいです。
アクティブドメインスロットを使って、あなたの写真の展示方法をカスタマイズします。
initedイベントを傍受してviewerのインスタンスを取得するか、またはthis.refs.xxx.viewerという方法を使用することもできます。
<template>
<div id="app">
<viewer :options="options" :images="images"
@inited="inited"
class="viewer" ref="viewer"
>
<template scope="scope">
<img v-for="src in scope.images" :src="src" :key="src">
{{scope.options}}
</template>
</viewer>
<button type="button" @click="show">Show</button>
</div>
</template>
<script>
import 'viewerjs/dist/viewer.css'
import Viewer from "v-viewer/src/component.vue"
export default {
components: {
Viewer
},
data() {
images: ['1.jpg', '2.jpg']
},
methods: {
inited (viewer) {
this.$viewer = viewer
},
show () {
this.$viewer.show()
}
}
}
</script>
設定項目&方法view.jsを参照してください。
プラグインの設定項目
name
<template>
<div id="app">
<div class="images" v-vuer="{movable: false}">
<img v-for="src in images" :src="src" :key="src">
</div>
<button type="button" @click="show">Show</button>
</div>
</template>
<script>
import 'viewerjs/dist/viewer.css'
import Vuer from 'v-viewer'
import Vue from 'vue'
Vue.use(Vuer, {name: 'vuer'})
export default {
data() {
images: ['1.jpg', '2.jpg']
},
methods: {
show () {
const vuer = this.$el.querySelector('.images').$vuer
vuer.show()
}
}
}
</script>
default Options
import Viewer from 'v-viewer'
import Vue from 'vue'
Vue.use(Viewer, {
defaultOptions: {
zIndex: 9999
}
})
全体のデフォルト設定をいつでもこのように変更できます。
import Viewer from 'v-viewer'
import Vue from 'vue'
Vue.use(Viewer)
Viewer.setDefaults({
zIndexInline: 2017
})
ここで述べたように、皆さんのvue.jsプログラムの設計に役に立ちます。