小程序开发笔记

  • wx.request发出请求需要注意

get请求时为

post请求时为:

 

  • view标签不识别’/n’换行符,text组件可以.但是text组件会不响应margin和padding值.
  • btn按钮必须放在from中才可以自定义hover-class样式

Resolving dependencies ‘:app:_debugApk’ >

Android编译时候出现卡在一个依赖包上面

故障原因是该包使用的是在线Gradle,然而下载不下来,定位到该包的build.gradle文件

里面有repositories {}配置内容

修改gradle版本为你电脑里面有的,或者修改下库

可参考这里

React-native 使用fetch上传图片

写下示例代码:

 

React Native Android使用fetch与服务器通讯无法读取Authorization

场景:

iOS使用fetch和curl 发送信息时候设置headers: {Authorization: token},

服务器都可以返回正确验证信息。

但是Android下使用fetch就不可以。

时间不允许,就放弃琢磨java代码了,所以另辟蹊径:服务器直接返回客户端提交的header信息,对比一下。

有大小写的区别?

服务器君没有大小写一视同仁么?

他是这么读取这个header信息的(忽略异常验证)

想了想服务器系统是CentOS,对大小写相当敏感,于是做进一步验证:

鉴于curl正常工作,那么设置curl的headers的Authorization为全小写authorization。

然后清理下服务器缓存,再次发送请求,嗯,服务器拒绝了我的请求。

到这里可以确定是服务器在度数组时候,键的大小写影响了结果。

问题找到了就好解决了:

祭出函数array_change_key_case 可参考

功能:返回键为大写或小写的数组,或者如果 array 非数组则返回 FALSE。

函数原型:array array_change_key_case ( array $input [, int $case = CASE_LOWER ] )

用下面的方式读取headers信息即可。

  • 另外一种方式

php的自定义头信息都可以使用$_SERVER[‘HTTP_*’]来获取,如header(‘test: wzhtest’);获取的时候,我们可以使用$_SERVER[‘HTTP_TEST’]来获取。

  • 这里说明下。Authorization可能是个例外。nginx没问题,但是Apache下可能会出现一个问题。那就是我们使用$_SERVER[‘HTTP_AUTHORIZATION’]可能就获取不到值。

解决办法可参考:

http://symfony.com/doc/current/setup/web_server_configuration.html#using-mod-proxy-fcgi-with-apache-2-4

 

FaridSafi/react-native-gifted-form使用手记

  • 自定义表单样式

提交按钮周围是灰色,影响接下来的布局

所以配置如下,添加formStyles即可

    同理修改Widget背景样式:

  • 报错this library (validator.js) validates strings only

原因是Validate没能识别出来字段的类型,所以在Form定义的位置添加如下内容即可

iOS APP上线

参照APP上线步骤总结,打包好APP,使用Archive的Upload卡死在Sending API usage to…

遂弃之。

点击Upload下面的export,选择app store。选择要保存的位置。

然后右键Docker上的xcode选择Open Developer Tool打开Application Loader

首先确认左上角显示的是自己要传APP的账户对不对,然后点击选取,选择刚才导出的APP(ipa格式)

点击下一步就行了。

往往事情不会发展的那么顺利,再上传过程中,可以点击活动查看到哪一步了。要是卡在APP Store什么的已二十分钟,就别纠结了。

不会买VPN就试试这个办法

 

React native报错this.setState is not function

一般出现在方法没有bind(this)

如果使用的是export default class XXX extends Component {}

需要在  constructor(props) {

this.function = this.function.bind(this);

}

--------

或者使用

const XXX = React.createClass({});

export default XXX;