2019-02-28 19:46:13 S_clifftop 阅读数 674
  • 微信开发者工具使用教程 如何上传、发布、审核等

    微信开发者工具使用教程 如何上传、发布、审核等 2020年3月31日录 - 微信开发者工具使用教程 01-微信开发者工具的下载和安装 02-微信小程序账号的注册、登录、appid的获取 03-微信小程序开发和公众号开发模式的切换 04-微信小程序如何导入项目 05-不在以下request合法域名列表如何设置解决 06-模拟器、编辑器、调试器的使用 07-本地如何调试、手机测试小程序 08-公众号账号关联和管理多个小程序 09-微信小程序项目管理、上传、审核、发布 10-如何能学会微信小程序开发

    118 人正在学习 去看看 黄菊华

egret本地可以运行,但转为微信小游戏后无法显示,也没有报错log,微信开发者工具预览一直是黑的,編译后在手机上运行也是黑的


解决方法:

  1. 如果不报任何错,大部分原因就是资源加载问题
    ●  因为微信开发工具不能断点,所以只能多写点log排除一下,看是哪一步卡住,如果不知道大体原因,只能从Main开始往下排查,我的原因是 RES.ResourceEvent.CONFIG_COMPLETE 资源加载失败,所以加了 RES.ResourceEvent.CONFIG_LOAD_ERROR 来重新加载资源
    ◇ 关于加载资源的问题,详细请看 加载资源组

  2. 如果有报错的log就相对好解决
    ● 不支持showAll适配模式,推荐使用缩放模式为fixedwidth
     ◇ 改下index里面 data-scale-mode="fixedWidth"
    s is not a constructor (不一定是s,可能是其它临时方法名)
     ◇ 看下有没有用到类对象引用egret.getDefinitionByName()方法,有用到,就需要将类挂载到window上,就是在类的外面定义window["XXClass"] = XXClass; (有人问我说不知道放哪?类外,ts文件类定义最外的大括号外)
     ◇ 没用到就看errorLog确定大体出错的位置,然后查找是否调用方法名写错或没有写方法,因为js文件内不会报错提示




2018-08-30 16:44:58 qq_39458856 阅读数 556
  • 微信开发者工具使用教程 如何上传、发布、审核等

    微信开发者工具使用教程 如何上传、发布、审核等 2020年3月31日录 - 微信开发者工具使用教程 01-微信开发者工具的下载和安装 02-微信小程序账号的注册、登录、appid的获取 03-微信小程序开发和公众号开发模式的切换 04-微信小程序如何导入项目 05-不在以下request合法域名列表如何设置解决 06-模拟器、编辑器、调试器的使用 07-本地如何调试、手机测试小程序 08-公众号账号关联和管理多个小程序 09-微信小程序项目管理、上传、审核、发布 10-如何能学会微信小程序开发

    118 人正在学习 去看看 黄菊华

 

附:代码

Page({
  data:{
    weather:"NAN",
    city:""
  },
  getCity:function(e){
    console.log("input")
    console.log(e.detail.value)
    this.setData({
     city:e.detail.value 
    })
  },
  Click: function () {
    let url = `https://free-api.heweather.com/s6/weather/now?location=${this.data.city}&key=cc79554fd87c447eab8e05a605940401`;
    console.log(this.data.city)
    //发送http请求到第三方服务器
    wx.request({
      url: url,
      success: function (res) {
        console.log(res)
        //获取天气情况
        let weather=res.data.HeWeather6[0].now.cond_txt;
        console.log(weather)
        this.setData({
          //修改data中的值
          weather:weather
        })
      }
    })
  }
})

原因是因为 

在调用wx.request之后this指代的已经不是page对象,而是wx.request对象了

解决办法:

将this提前赋值给一个变量

let page=this;

wx.request({

   ...............

})

Page({
  data:{
    weather:"NAN",
    city:""
  },
  getCity:function(e){
    console.log("input")
    console.log(e.detail.value)
    this.setData({
     city:e.detail.value 
    })
  },
  Click: function () {
    let url = `https://free-api.heweather.com/s6/weather/now?location=${this.data.city}&key=cc79554fd87c447eab8e05a605940401`;
    console.log(this.data.city)
    let page=this;
    //发送http请求到第三方服务器
    wx.request({
      url: url,
      success: function (res) {
        console.log(res)
        //获取天气情况
        let weather=res.data.HeWeather6[0].now.cond_txt;
        console.log(weather)
        page.setData({
          //修改data中的值
          weather:weather
        })
      }
    })
  }
})

第二种解决办法是使用es6的箭头函数

当我们使用箭头函数时,函数体内的this对象,就是定义时所在的对象,而不是使用时所在的对象。
并不是因为箭头函数内部有绑定this的机制,实际原因是箭头函数根本没有自己的this,它的this是继承外面的,因此内部的this就是外层代码块的this

有道思否论坛出的题大家看一下:

  <body>
    <div id="d1">1
    </div>
  </body>
<script>
    let obj ={
        name:"obj",
        test1:function(){
            document.getElementById("d1").addEventListener("click",()=>{
                console.log("test1",this);
            })
        },
        test2:()=>{
            document.getElementById("d1").addEventListener("click",()=>{
                console.log("test2",this);
            })
        },
        test3:()=>{
            console.log("test3",this);
        }
    }
    obj.test3();
    obj.test1();
    obj.test2();
</script>

1、test1中的箭头函数的this指向的是test1函数内部绑定的this,即也就是定义它的地方:obj
2、test2中的箭头函数的外层还是箭头函数,得再往外找一层,找到了obj的外层,即window
3、test3中的箭头函数的外层是obj的外层,即window

2018-01-24 16:42:00 qq_31392539 阅读数 17
  • 微信开发者工具使用教程 如何上传、发布、审核等

    微信开发者工具使用教程 如何上传、发布、审核等 2020年3月31日录 - 微信开发者工具使用教程 01-微信开发者工具的下载和安装 02-微信小程序账号的注册、登录、appid的获取 03-微信小程序开发和公众号开发模式的切换 04-微信小程序如何导入项目 05-不在以下request合法域名列表如何设置解决 06-模拟器、编辑器、调试器的使用 07-本地如何调试、手机测试小程序 08-公众号账号关联和管理多个小程序 09-微信小程序项目管理、上传、审核、发布 10-如何能学会微信小程序开发

    118 人正在学习 去看看 黄菊华

介于第一版本写的有点乱,所有才有了第二版本.....

效果图:


5337239-8a7fdc6db91150ca.gif
1516782136128mzhhhhupay.gif

微信回调我打在LOG里了

5337239-d64db3d1c97bb943.png
sss.png

本文档主要是为了给你们一个我集成比较完美的一个Demo,便于大家开发,如果你要了解其中的原理请到我的第一个比较乱的文章吧....网址:https://www.jianshu.com/p/c417ce674eb3

2个都是算一个sign然后传递给服务器(微信或者支付宝的),微信的多了一步,就是报名和签名(MD5)

这个demo怎样使用(快速入手)?请查看MainActivity下有详细解释

代码中有详细介绍:

5337239-a901373934359d62.png
123.png

Demo(GitHub):https://github.com/hanxinhao000/wxAndalipay

没有更多推荐了,返回首页