| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129 | <template>	<view>		<page-head :title="title"></page-head>		<view class="uni-padding-wrap uni-common-mt">			<block v-if="tempFilePath">				<image :src="tempFilePath" class="image" mode="aspectFit"></image>			</block>			<block v-if="!tempFilePath && savedFilePath">				<image :src="savedFilePath" class="image" mode="aspectFit"></image>			</block>			<block v-if="!tempFilePath && !savedFilePath">				<view class="uni-hello-addfile" @click="chooseImage">+ 请选择文件</view>			</block>			<view class="uni-btn-v">				<button class="btn-savefile" @click="saveFile">保存文件</button>				<button @click="clear">删除文件</button>			</view>			<!-- #ifndef MP-ALIPAY || MP-TOUTIAO -->			<view class="btn-area">				<button @click="openDocument">打开pdf文件</button>			</view>			<!-- #endif -->		</view>	</view></template><script>	export default {		data() {			return {				title: 'saveFile',				tempFilePath: '',				savedFilePath: ''			}		},		onLoad() {			this.savedFilePath = uni.getStorageSync('savedFilePath');		},		methods: {			chooseImage() {				uni.chooseImage({					count: 1,					success: (res) => {						this.tempFilePath = res.tempFilePaths[0];					},					fail: (err) => {						// #ifdef MP						uni.getSetting({							success: (res) => {								let authStatus = res.authSetting['scope.album'] && res.authSetting['scope.camera'];								if (!authStatus) {									uni.showModal({										title: '授权失败',										content: 'Hello uni-app需要从您的相机或相册获取图片,请在设置界面打开相关权限',										success: (res) => {											if (res.confirm) {												uni.openSetting()											}										}									})								}							}						})						// #endif					}				});			},			saveFile() {				if (this.tempFilePath.length > 0) {					uni.saveFile({						tempFilePath: this.tempFilePath,						success: (res) => {							this.savedFilePath = res.savedFilePath;							uni.setStorageSync('savedFilePath', res.savedFilePath);							uni.showModal({								title: '保存成功',								content: '下次进入页面时,此文件仍可用',								showCancel: false							});						},						fail: (res) => {							uni.showModal({								title: '保存失败',								content: '失败原因: ' + JSON.stringify(res),								showCancel: false							});						}					})				} else {					uni.showModal({						content: '请选择文件',						showCancel: false					});				}			},			clear() {				uni.setStorageSync('savedFilePath', '');				this.tempFilePath = '';				this.savedFilePath = '';			},			// #ifndef MP-ALIPAY || MP-TOUTIAO			openDocument() {				uni.downloadFile({					url: 'https://vkceyugu.cdn.bspapp.com/VKCEYUGU-dc-site/b3f1d0b0-5168-11eb-bd01-97bc1429a9ff.pdf',					success: (res) => {						uni.openDocument({							filePath: res.tempFilePath,							success: () => {								console.log('打开文档成功');							}						});					}				});			},			// #endif		}	}</script><style>	.image {		width: 100%;		height: 360rpx;	}	.btn-savefile {		background-color: #007aff;		color: #ffffff;	}</style>
 |