02.13
在管理后台升级WordPress主程序或者插件时,遇到以上问题。解决办法:到WordPress主目录下,进入wp-includes子目录,找到class-http.php文件(如果WordPress版本比较新,则是class-wp-http.php文件),找到sslverify变量,将其默认值修改为false。这样就关闭了ssl验证。再进入到管理后台就可以正常升级了。正常情况下,WordPress主程序升级后,这个变量又会被重置成true。
在管理后台升级WordPress主程序或者插件时,遇到以上问题。解决办法:到WordPress主目录下,进入wp-includes子目录,找到class-http.php文件(如果WordPress版本比较新,则是class-wp-http.php文件),找到sslverify变量,将其默认值修改为false。这样就关闭了ssl验证。再进入到管理后台就可以正常升级了。正常情况下,WordPress主程序升级后,这个变量又会被重置成true。
例如,我们要定义一个组件CarView。数据用一个类Car来表示,Car有以下的属性:id, name, color。
class Car {
constructor(id, name, color) {
this.id = id;
this.name = name;
this.color = color;
}
}
我们在CarView的上级组件的state里有一个Car类型的对象car,想把car的属性的值传给CarView组件去渲染界面,这时候可以采用如下的传递参数的方法:
<CarView {…this.state.car} />
在CarView定义里可以使用this.props.id, this.props.name, this.props.color来获得传递进来的参数。如:
在CarView的render方法里:
<Text>{this.props.name}</Text>,可以渲染出car的name。
以上的写法相当于<CarView id={this.state.car.id} name={this.state.car.name} color={this.state.car.color} />。
可见这种写法使代码得以简化。
import React, { Component } from “react”;
import语句里有时候加大括号,有时候不加。区别如下:
1. 如果是default export,则import的时候不加大括号。
2. 如果是named export,则import的时候必须加大括号。
例如:导出时是export default App,则导入时就是import App from ‘/path/App’;
导出时没有使用default关键字,如export const A=25 或者 export {MyComponent}, 则导入时就是import {A} from ‘/path/App’,这时就要加大括号。
一个组件只能有一个default export,和任意个named export。
1. (1)在android\app\src\main下建立一个assets文件夹
react-native init AwesomeProject
cd AwesomeProject
react-native run-android
npm uninstall react-native
npm install --save react-native@0.55.4
react-native run-android
npm install --save babel-core@latest babel-loader@latest
npm uninstall --save babel-preset-react-native
npm install --save babel-preset-react-native@4.0.0
react-native run-android
安卓系统由于防火墙的原因,GCM在国内不能使用。目前国内的做法是在app里集成第三方提供的推送sdk。两者的原理基本相同,就是在手机上维持一个长连接到服务器,这样的话服务器就能主动向手机发消息,而不是被动的接收手机发送的请求后再向手机端返回响应。
但是由于国内手机厂商不同的定制rom,会杀死后台进程,上面提到的长连接就不能保持,从而导致推送消息不能送达手机。目前,有以下几种方法能解决或改善后台进程被杀的问题。
(1)用户量很大的app,比如微信,qq,它们会进入到手机厂商的白名单中。白名单中的app转到后台以后不会被杀死。如果你的app足够牛b有影响力,手机厂商可能会将其放入白名单。
(2)qq表面上转移到后台,但实际上并不是如此,它是在前台留有1个像素。(这条未经本人亲自验证)
(3)很多第三方推送sdk使用了共享连接的方式,即集成了该sdk的多个app使用同1个长连接接收推送消息。如果其中1个app被打开,则会建立1个长连接,其他的app也会使用这个长连接。所以,我们可以使用用户量高并且被很多知名的app使用的sdk,如果这些知名app被打开,那么我们的推送也会被送达。比如,据说王者荣耀就使用了腾讯公司的信鸽推送,我们可以考虑也使用这个sdk。