vue-preview 동적 으로 그림 의 너비 와 높이 를 가 져 오고 회전 기능 의 실현 을 증가 합 니 다.
나 는 프로젝트 에서 도 이 플러그 인 을 사용 한 적 이 있 는데,전체적으로 말 하면 비교적 만족스럽다.하지만 그림 회전 기능 이 부족 합 니 다.
설치 사용
STEP 1:설치
npm i vue-preview -S
두 번 째 단계:설정 참조
import VuePreview from 'vue-preview'
Vue.use(VuePreview)
Vue.use(preview, {
mainClass: 'pswp--minimal--dark',
barsSize: {top: 0, bottom: 0},
captionEl: false,
fullscreenEl: false,
shareEl: false,
bgOpacity: 0.85,
tapToClose: true,
tapToToggleControls: false
})
STEP 3:사용
//
previewlist: [
{
src: ‘./pic01.jpg',
w: 1200,
h: 900
},
{
src: ‘./pic01.jpg',
w: 1200,
h: 900
}
]
// “preview-img” ( ), “show”
<img :src="decodeURIComponent(item.name)" class="preview-img" @click="show(index)">
//
show (index) {
this.$preview.open(index, this. previewlist);
}
동적 가 져 오기 그림 너비그림 목록 자원 이 서버 에서 가 져 오 면 그림 의 실제 너비 와 높이 를 먼저 가 져 와 야 합 니 다.구체 적 인 코드 는 다음 과 같 습 니 다.
this. previewlist = []; //
let imglist = […]; //
show (index) {
for (let i = 0; i < imglist.length; i++) {
//
let newImage = {};
let img = new Image();
img.src = imglist[i];
img.onload = function () {
newImage.src = imglist[i];
newImage.w = img.width;
newImage.h = img.height;
};
this.previewlist.push(newImage);
}
// javascript 。 , setTimeout 0ms 。
setTimeout(() => {
this.$preview.open(index, this.previewlist);
}, 0);
}
그림 회전 기능 추가기본 적 인 기능 은 전체 화면,확대,공유,이미지 전환 등 이 있 습 니 다.가끔 우 리 는 그림 회전 기능 이 필요 합 니 다.어떻게 해 야 합 니까?그것 은 스스로 플러그 인 을 고 칠 수 밖 에 없다.
STEP 1:회전 아이콘 추가
아이콘 파일 경로:nodemodules\photoswipe\dist\default-skin
원래 앞의 8 개의 그림 만 있 었 는데 뒤에 있 는 조금 큰 회전 아이콘 은 내 가 추가 한 것 이다.물론 너 도 사 이 즈 를 원래 의 것 과 똑 같이 설정 할 수 있다.
두 번 째 단계:페이지 에 회전 단 추 를 추가 합 니 다.
페이지 파일 경로:nodemodules\vue-preview\src\plugins\preview\preview.vue
세 번 째 단계:회전 단 추 를 추가 하 는 스타일
스타일 파일 경로:nodemodules\photoswipe\dist\default-skin
.pswp__button--rotate {
background-position: -176px 0;
}
STEP 4:회전 실현 방법파일 경로:nodemodules\vue-preview\src\plugins\preview\preview.vue
imgRotateFn () {
this.angle+=90;
let imgNode = document.getElementsByClassName('pswp__img');
for (let i = 0; i<imgNode.length; i++) {
imgNode[i].style.WebkitTransform = 'rotate('+this.angle+'deg)';
}
}
여기 서 나 는 핵심 코드 만 붙 였 다.브 라 우 저 호 환 이 필요 하고 그림 을 전환 할 때 그림 각 도 를 0 등 으로 설정 해 야 한다.테스트 결과
테스트 는 문제 없 이 드디어 퇴근 할 수 있 게 됐어,하하 하.
Tips:플러그 인 을 직접 고치 기 귀 찮 은 파트너 는 건물의 GitHub 창고 에서 변 경 된 파일 을 다운로드 할 수 있 습 니 다.vue-preview 를 설치 한 후"attachment"폴 더 에 있 는 세 개의 파일 로 프로젝트 에 대응 하 는 파일 을 교체 하면"회전"기능 이 있 습 니 다.GitHub 주소:https://github.com/xiongjun0812/vue-preview
오늘 은 여기까지 공유 하 겠 습 니 다.문제 가 있 으 면 댓 글 교 류 를 환영 합 니 다.참고 해 주시 고 많은 응원 부 탁 드 리 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Fastapi websocket 및 vue 3(Composition API)1부: FastAPI virtualenv 만들기(선택 사항) FastAPI 및 필요한 모든 것을 다음과 같이 설치하십시오. 생성main.py 파일 및 실행 - 브라우저에서 이 링크 열기http://127.0.0.1:...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.