《30天App开发从0到1:APICloud移动开发实战》第54页
打开main.html,在apiready中添加一段代码
api.addEventListener({ name: 'citySelected'}, function(ret, err){ $api.removeCls($api.byId("arrow"), 'active'); $api.html($api.byId("city"),ret.value.cityName); api.closeFrame({name:'citySelectorFrame'}); }); 'active');$api.html ($api.byId("city"),ret.value.cityName)});
提示错误:Uncaught SyntaxError: Unexpected token ) at main.html : 117
博主发现
'active');$api.html ($api.byId("city"),ret.value.cityName)});
这里和前边的
$api.removeCls($api.byId("arrow"),'active'); $api.html($api.byId("city"),ret.value.cityName);
重复了,删除掉下边的就好了
这里监听citySelected事件,当选择完城市后,会触发后面的回调函数,关闭城市选择Frame,之后修改箭头的指向并更新城市名称
如果发现更改完这,项目在APP Loader中运行时,选择完后城市选择Frame没有关闭
可以检查是否按课本P53页下方所写的
name: 'cityselectorFrame',
api.openFrame({ name: 'cityselectorFrame', url: './cityselector_frame.html', rect: { x: 0, y: headerH, w: 'auto', // 自动填充所在Window的宽度 h: 'auto' // 自动填充所在Window的高度 },
另:第48页、49页的<section>那段是重复的
希望Apicloud平台越做越好把
附上一个自己做的高仿课本开发App网上书店项目