1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 |
- <template>
- <view>
- <page-head :title="title"></page-head>
- <view class="uni-padding-wrap uni-common-mt">
- <view class="demo">
- <block v-if="imageSrc">
- <image :src="imageSrc" class="image" mode="widthFix"></image>
- </block>
- <block v-else>
- <view class="uni-hello-addfile" @click="chooseImage">+ 选择图片</view>
- </block>
- </view>
- </view>
- </view>
- </template>
- <script>
- export default {
- data() {
- return {
- title: 'uploadFile',
- imageSrc: ''
- }
- },
- onUnload() {
- this.imageSrc = '';
- },
- methods: {
- chooseImage: function() {
- uni.chooseImage({
- count: 1,
- sizeType: ['compressed'],
- sourceType: ['album'],
- success: (res) => {
- console.log('chooseImage success, temp path is', res.tempFilePaths[0])
- var imageSrc = res.tempFilePaths[0]
- uni.uploadFile({
- url: 'https://unidemo.dcloud.net.cn/upload',
- filePath: imageSrc,
- fileType: 'image',
- name: 'data',
- success: (res) => {
- console.log('uploadImage success, res is:', res)
- uni.showToast({
- title: '上传成功',
- icon: 'success',
- duration: 1000
- })
- this.imageSrc = imageSrc
- },
- fail: (err) => {
- console.log('uploadImage fail', err);
- uni.showModal({
- content: err.errMsg,
- showCancel: false
- });
- }
- });
- },
- fail: (err) => {
- console.log('chooseImage fail', err)
- // #ifdef MP
- uni.getSetting({
- success: (res) => {
- let authStatus = res.authSetting['scope.album'];
- if (!authStatus) {
- uni.showModal({
- title: '授权失败',
- content: 'Hello uni-app需要从您的相册获取图片,请在设置界面打开相关权限',
- success: (res) => {
- if (res.confirm) {
- uni.openSetting()
- }
- }
- })
- }
- }
- })
- // #endif
- }
- })
- }
- }
- }
- </script>
- <style>
- .image {
- width: 100%;
- }
- .demo {
- background: #FFF;
- padding: 50rpx;
- }
- </style>
|