收藏
回答

为什么调用wx.chooseImage没有反应?

框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
小程序 Bug wx.chooseImage 客户端 6.7 2.4.2

- 当前 Bug 的表现(可附上截图)

    代码是这样写的:

    

selectImage(){

    wx.showActionSheet({

        itemList: ['拍照', '相册'],

        success(res) {

            console.log(res.tapIndex);

            let sourcetype = ['camera','album'];

            wx.chooseImage({

                count: 1,

                sizeType: ['original', 'compressed'],

                sourceType: sourcetype[res.tapIndex],

                success(response) {

                // tempFilePath可以作为img标签的src属性显示图片

                    const tempFilePaths = response.tempFilePaths

                    console.log(tempFilePaths);

                    }

            })

            },

        fail(res) {

            console.log(res.errMsg)

        }

    })

},


在真机调试中不能唤起相机或者相册


- 预期表现

    可以打开系统相册或者相机


回答关注问题邀请回答
收藏

4 个回答

  • 小程序商城定制开发2600元全包
    小程序商城定制开发2600元全包
    06-02

    <!DOCTYPE html>

    <html lang="zh">

    <head>

      <meta charset="UTF-8">

      <title>选择图片</title>


    <script type="text/javascript" src="${request.contextPath}/lib/jquery/jquery-3.1.1.min.js"></script>

    <script type="text/javascript" src="https://res.wx.qq.com/open/js/jweixin-1.2.0.js"></script>


    <script>

        wx.config({

          debug: true,

          appId: '${sign.appId}',

          timestamp: '${sign.timestamp}',

          nonceStr: '${sign.nonceStr}',

          signature: '${sign.signature}',

          jsApiList: ['checkJsApi','chooseImage','scanQRCode']

        });

        

        wx.ready(function() {

        

          wx.checkJsApi({

            jsApiList: ['chooseImage','scanQRCode']

          });

          

          var images = {

        localId: [],

        serverId: []

      };

         

          $('#submit_photo').on('click', function() {

            alert("chooseImage start!");  //能弹出

            wx.chooseImage({

              success: function(res) {

                alert("chooseImage success!");  //不能弹出

                images.localId = res.localIds;

                

                //var localId = res.localIds[0];

                //$('#submit_photo').attr('src', localId.toString());


              },

              error: function(res) {

                alert("chooseImage error!");   //不能弹出

              },

              fail: function(res) {

                alert("chooseImage fail!");    //不能弹出

              },

              complete: function(res) {

                alert("chooseImage complete!");    //不能弹出

              }

            });

          });

          

          $('#scanQr').on('click', function() {

            alert("scanQr start!");   //能弹出

            wx.scanQRCode({

              success: function(res) {

                alert("scanQr success!");   //能弹出

              }

            });

          });      


        });

    </script>

    </head>

    <body>

    <img src="${request.contextPath}/static/images/noimage.png" style="height:300px; width:300px" id="submit_photo"/>

    <input type="text" value="" id="photoId" />

    <br>

    <br>

    <button id="scanQr" style="height:120px; width:300px">扫一扫</button>


    </body>

    </html>

    06-02
    有用 1
    回复
  • 微盟
    微盟
    2018-12-20

    有可能是你的真机的微信本身没有获取到使用系统的相机或储存空间的权限导致的。

    2018-12-20
    有用 1
    回复
  • 简单的昵称
    简单的昵称
    2018-12-20

    权限问题吧

    2018-12-20
    有用
    回复
  • ==
    ==
    2018-12-20

    直接这样写不行吗? sourceType: ['camera','album'];

    2018-12-20
    有用
    回复 6
    • 管凯旋
      管凯旋
      2018-12-20

      这样写我这边也可以调起相机相册啊

      2018-12-20
      回复
    • 勇敢的少年
      勇敢的少年
      2018-12-20回复管凯旋

      我想拉起菜单:相机和相册,然后根据来源做 应该没问题吧

      2018-12-20
      回复
    • ==
      ==
      2018-12-20回复管凯旋

      嗯!!按道理他这样应该也没错,但是呢他定位错误在

      chooseImage

      没反应。。。。

      2018-12-20
      回复
    • 管凯旋
      管凯旋
      2018-12-20回复勇敢的少年

      要不你做个可以复现的代码片段吧,你贴出来的代码没问题的,或者就是楼上说的你手机没权限

      2018-12-20
      回复
    • 勇敢的少年
      勇敢的少年
      2018-12-20回复管凯旋

      我把菜单去掉了 直接用wx.chooseImage现在可以用就行了 谢谢大家~

      2018-12-20
      2
      回复
    查看更多(1)
登录 后发表内容