我已将MyItem.qml作为源组件加载到Loader元素上。现在我想从Loader元素中删除或卸载该页面。我试图设置来源:“”& sourceComponent:“”,也是sourceComponent:“undefined”。但它不起作用
答案 0 :(得分:3)
您应该设置sourceComponent = undefined
或source = ""
。
通常,我使用此代码:
Loader{
id: loader
function show(component) {
sourceComponent = component;
}
function hide(){
sourceComponent = undefined;
}
}
答案 1 :(得分:0)
您可以将ServiceFactory.createRetrofitService().getUserFollowing(sessionMgr.getAuthToken())
.flatMapIterable(new Func1<UserSelfFollows, Iterable<?>>() {
@Override
public Iterable<?> call(UserSelfFollows userSelfFollows) {
return userSelfFollows.userdata;
}
})
.flatMap(new Func1<UserSelfFollows, Observable<Media>>() {
@Override
public Observable<Media> call(UserSelfFollows user) {
return ServiceFactory.createRetrofitService().getMediaOfUser(user.id, sessionMgr.getAuthToken());
}
})
.toList()
.subscribe(new Action1<List<Media>>() {
@Override
public void call(List<Media> rs) {
//do something with the list of media data
}
});
属性设置为active
以进行卸载,或将false
(默认值)设置为加载。
答案 2 :(得分:0)
您没有说出实际问题是什么,但是如果您遇到错误,而您尝试卸载的组件正在尝试访问它不应该访问的内容,那可能是因为Loader使用deleteLater()
删除项目,这意味着它不会立即被删除。有关详细信息,请参阅此错误报告: