es6部分知识-章节3

1.generator生成器

function *show(){
	alert(1);

	yield;//暂停

	alert('b');
}
let genObj=show();

console.log(genObj);
genObj.next();

//yield
/*function  *show(num1,num2){
	alert('a');

	let a=yield;
	alert('b');
	alert(num1);
	alert(a);
}
let gen=show(1,2);
gen.next(12);//第一个没法给yield传参
gen.next(5);*/

这里引用下blue老师封装的一个方法

使用npm安装   cnpm i yield-runner-blue

//带逻辑-generator
runner(function *(){
	let userData=yield $ajax({url:'genUserData',dataType:'json'});
	if(userData.type='VIP'){
		let items=yield $ajax({url:'getVIPItems',dataType:'json'});
	}else{
		let items=yield $ajax({url:'getItems',dataType:'json'});
	}
	//生成...
})

猜你喜欢

转载自blog.csdn.net/lyj168997/article/details/82625311