警告2部分问题: 我在应用中使用Gwt Google Picker。
在尝试获取结果时,我遇到的错误是我的代码:
private final static String appId = "ViDemantay";
private final static AppUser appUser = GWT.create(AppUser.class);
private static HandlesMedia handler;
private static GooglePickerCell pickerCell;
private final static AbstractPickerCallback callback = new AbstractPickerCallback(){
@Override
public void onCanceled() {
// TODO Auto-generated method stub
}
@Override
public void onPicked(ViewToken viewToken, BaseResult result) {
$.console.log(result);
DocumentResult docs = result.<DocumentResult>cast();
String mediaUrl = docs.getDocs().get(0).getEmbedUrl();
String thumbnail = docs.getDocs().get(0).getThumbnails().get(0).getUrl();
handler.setMediaUrl(thumbnail);
handler.setMediaUrl(mediaUrl);
$.console.log("The handler is " + handler);
pickerCell.setValue(null, null, handler);
}}; ///////////end callback////////////////////////////
private static Picker picker;
public static void get(){PickerLoader.loadApi(apiKey, new Runnable(){
@Override
public void run() {
appUser.load($(window).prop("appUser"));
picker = PickerBuilder.create().addCallback(callback).setAppId(appId)
.setAuthUser(appUser.getAcctId()).setOAuthToken(appUser.getAuthToken())
.addView(ViewId.DOCS).addView(ViewId.YOUTUBE)
.hideTitleBar().build();
picker.setVisible(false);
}});}
似乎回调永远不会在浏览器的控制台上回调我收到此错误:
TypeError: this$static_0_g$ is undefined
这是在选择文件后执行的...但没有结果。
答案 0 :(得分:0)
所以我的问题是我的回调是最终的和静态的。一旦我改变它,两个匿名类都是肉汁: 应该是
picker = PickerBuilder.create().addCallback( new AbstractPickerCallback(){
@Override
public void onCanceled() {
// TODO Auto-generated method stub
}
@Override
public void onPicked(ViewToken viewToken, BaseResult result) {
$.console.log(result);
DocumentResult docs = result.<DocumentResult>cast();
String mediaUrl = docs.getDocs().get(0).getEmbedUrl();
String thumbnail = docs.getDocs().get(0).getThumbnails().get(0).getUrl();
handler.setMediaUrl(thumbnail);
handler.setMediaUrl(mediaUrl);
$.console.log("The handler is " + handler);
pickerCell.setValue(null, null, handler);
}})
.setAppId(appId)
.setAuthUser(appUser.getAcctId()).setOAuthToken(appUser.getAuthToken())
.addView(ViewId.DOCS).addView(ViewId.YOUTUBE)
.hideTitleBar().build();
picker.setVisible(false);
所以现在结果又回来了......心理笔记总是在结果网址或缩略图上检查是否为空。
就第二部分而言,我会查看EditableCell实现,因为单元格值已更改,但客户端未更新。