ES6特性
- 类
- 模块化
- 箭头函数
- 函数参数默认值
- 模板字符串
- 解构赋值
- 延展操作符
- 对象属性简写
- Promise
- Let与Const
1、类
引入类的概念,让其具有面向对象的开发
class Person {
constructor(name,age) {
this.name = name;
this.age = age;
}
}
2、模块化
模块之间的相互调用关系是通过export来规定模块对外暴露的接口,通过import来引用其它模块提供的接口
export var name = 'Rainbow'; //导出变量
export const sqrt = Math.sqrt; //导出常量
var name = 'Rainbow'; //导出多个变量
var age = '24';
export {name, age};
export function myModule(someArg) { //导出函数
return someArg;
}
export default class MyComponent extends Componet{ //导出组件
render(){
<Text>自定义组件</Text>
}
}
定义好模块的输出以后就可以在另外一个模块通过import引用
import {myModule} from 'myModule'; //导入函数
import {name,age} from 'test'; //导入变量
import MyComponent from 'MyComponent' //导入组件
3、箭头函数
箭头函数与包围它的代码共享同一个this,能帮你很好的解决this的指向问题
()=>{
alert("foo");
}
错误示范
class PauseMenu extends React.Component{
componentWillMount(){
AppStateIOS.addEventListener('change', this.onAppPaused.bind(this));
}
componentWillUnmount(){
AppStateIOS.removeEventListener('change', this.onAppPaused.bind(this));
}
onAppPaused(event){
}
}
正确示范
class PauseMenu extends React.Component{
componentWillMount(){
AppStateIOS.addEventListener('change', this.onAp