2016-09-09 87 views
0

设置了URL参数的UploadCollectionItem必须具备哪些参数才会显示单击文件名时的文件。在UI5中设置UploadCollectionItem中的URL 1.38.4

我正在使用工厂来处理来自不同位置的文件。

attachmentFactory(sId, context) { 
    const modelObj = context.getModel().getProperty(context.getPath()); 
    const uploadListItem = new SAPUploadCollectionItem(); 

    // If __metadata exists, attachment entry is from odata, if not then it's a FileEntry object. 
    if (modelObj.__metadata) { 
    uploadListItem.setFileName(modelObj.FILE_NAME); 
    uploadListItem.setMimeType(modelObj.MIME_CODE); 
    uploadListItem.setUrl("https://upload.wikimedia.org/wikipedia/commons/4/49/Koala_climbing_tree.jpg"); 
    } 
    else { 
    uploadListItem.setFileName(modelObj.name); 
    uploadListItem.setMimeType(modelObj.type); 
    uploadListItem.setUrl("https://upload.wikimedia.org/wikipedia/commons/4/49/Koala_climbing_tree.jpg"); 
    } 
    return uploadListItem; 
} 

我得到UI5一个异常时,我按在功能链接

UploadCollection.prototype._triggerLink = function(oEvent, oContext) { 
    var iLine = null; 
    var aId; 

    if (oContext.editModeItem) { 
     //In case there is a list item in edit mode, the edit mode has to be finished first. 
     sap.m.UploadCollection.prototype._handleOk(oEvent, oContext, oContext.editModeItem, true); 
     if (oContext.sErrorState === "Error") { 
      //If there is an error, the link of the list item must not be triggered. 
      return this; 
     } 
     oContext.sFocusId = oEvent.getParameter("id"); 
    } 
    aId = oEvent.oSource.getId().split("-"); 
    iLine = aId[aId.length - 2]; 
    sap.m.URLHelper.redirect(oContext.aItems[iLine].getProperty("url"), true); 
}; 

oContext.aItems是一个数组,但source.getId()值是 “__item9-ta_filenameHL” 这样__item9在oContext.aItems没有找到

我不知道这是否是一个错误或我设置了我的UploadCollectionItem正确

回答

0

我不得不设置UploadCollectionItem的SID为t他是被传入工厂的。