|
本帖最后由 ajun007_cn 于 2016-2-19 20:34 编辑
attachmentSimple组件,在3.3版本中,加了actionUrl属性,很好,可以使用自己的上传服务,但不允许自定义的参数传入比较麻烦,如:
actionUrl="/baas/WeixinService/Weixin/simpleFileStore?OrgID="+this.getContext().getCurrentOgnID();
我要传入OrgID参数,然后按机构代码新建目录,存放图片文件。
现在attachmentSimple.js中代码:
getFileUrl : function(realFileName,storeFileName,ownerID,operateType){
var url = this.actionUrl + '?realFileName=' + realFileName + '&storeFileName='+storeFileName + '&ownerID='+ownerID + '&operateType=' + operateType+ '&OrgID='+this.getModelOrgID();
return require.toUrl(url);
},
是不允许代入“?OrgID=”会原代码冲突,出现错误码,建议:在所有URL中的代码中加入一个判断: if (this.actionUrl .indexOf("?")=-1)
改为以下:
getFileUrl : function(realFileName,storeFileName,ownerID,operateType){
var url = "";
if (this.actionUrl .indexOf("?")=-1){
url =this.actionUrl + '?realFileName=' + realFileName + '&storeFileName='+storeFileName + '&ownerID='+ownerID + '&operateType=' + operateType;
} else {
url =this.actionUrl + '&realFileName=' + realFileName + '&storeFileName='+storeFileName + '&ownerID='+ownerID + '&operateType=' + operateType;
}
return require.toUrl(url);
},
copyFile:function(ownerID,storeFileName,currentOwnerID){
var url = "";
if (this.actionUrl .indexOf("?")=-1){
url = this.actionUrl + '?targetOwnerID=' + currentOwnerID + '&storeFileName=' + storeFileName + '&ownerID=' + ownerID + '&operateType=copy';
} else {
url = this.actionUrl + '&targetOwnerID=' + currentOwnerID + '&storeFileName=' + storeFileName + '&ownerID=' + ownerID + '&operateType=copy';
}
url = require.toUrl(url);
$.ajax({
url:url,
cache:false,
async:false
}).fail(function(){
throw "copyFile error";
});
},
另外:我按坛子里的贴子:http://bbs.wex5.com/forum.php?mod=viewthread&tid=85096&highlight=SimpleFileStore中说的方法修改attachmentSimple.js中代码,并进行重新合并,提示core.min.js有错误,导致attachmentSimple组件无法使用。头大,望起步公司的大神们改进attachmentSimple组件,允许自己导入自定义参数,这样就不用改attachmentSimple.js源代码,会方便很多。谢谢……还有:attachmentSimple组件不能动态new出来,不知为何?demo里面也没有attachmentSimple组件相关的示例。
attachmentSimple组件也不能动态给actionUrl赋值,只能在设计时。
|
|