赞
踩
- <template>
- <view>
- <web-view :update-title="false" v-if="!showVideo" :src="pageUrl" @message="handleMessage"></web-view>
- <video v-else style="width: 100%;" :autoplay="true" :title="title" @error="playErro" :src="pageUrl"></video>
- </view>
- </template>
-
- <script>
- export default {
- data() {
- return {
- pageUrl: null,
- showVideo: false,
- title: ''
- }
- },
- onLoad(option) {
- // this.pageUrl = decodeURIComponent(option.url)
- this.parseUrl(decodeURIComponent(option.url));//接受pdf的地址
- this.title = option.title;
- uni.setNavigationBarTitle({
- title: this.title
- })
- console.log(option,"optionoptionoption")
- },
- methods: {
- playErro() {
- uni.$u.toast("播放错误")
- },
-
- handleMessage(evt) {
- let data = evt.detail.data[0];
- console.log('消息传递:' + data.editor);
- this.getOpenerEventChannel().emit('resultData',data.editor);
- uni.navigateBack({});
- },
- parseUrl(url) {
- var fileEnd = ['doc', 'xls', 'ppt', 'pdf', 'docx', 'xlsx', 'pptx'];
- var type = this.getEnd(url, '.');
- if (fileEnd.indexOf(type) >= 0) {
- console.log('打开文档');
- // plus.runtime.openURL('https://view.officeapps.live.com/op/embed.aspx?src='+url);
- var goUrl = 'https://view.officeapps.live.com/op/embed.aspx?src=' + url;
- if (type == 'pdf') {
- let base_url = '../../static/pdf/html/web/viewer.html';
- goUrl = base_url + '?file=' + url;
- }
- this.pageUrl = goUrl;
- } else if (type == 'mp4' || type == 'm3u8' || url.indexOf('rtmp://') > -1) {
- this.showVideo = true;
- this.pageUrl = url;
- } else {
- this.pageUrl = url;
- }
-
- },
- getEnd(text, str) {
- var index = text.lastIndexOf(str);
- return text.substring(index + 1, text.length);
- },
- }
- }
- </script>
-
- <style>
-
- </style>
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。