Adobe CQ图像组件文件名
我使用Maven原型创建了一个新的Adobe CQ 5.6.1项目,然后创建了一个页面组件和一个Adobe CQ图像组件文件名,adobe,aem,Adobe,Aem,我使用Maven原型创建了一个新的Adobe CQ 5.6.1项目,然后创建了一个页面组件和一个CQ:page,它将该页面组件用作sling:resourceType。页面组件有一个 <cq:include path="par" resourceType="foundation/components/parsys" /> P>一切都很好,我可以加载页面,在侧栏中,我看到图像和下载组件,并且能够将它们拖动到Par。 问题 编辑下载组件时,我从
CQ:page
,它将该页面组件用作sling:resourceType
。页面组件有一个
<cq:include path="par" resourceType="foundation/components/parsys" />
<> P>一切都很好,我可以加载页面,在侧栏中,我看到图像和下载组件,并且能够将它们拖动到Par。
问题
编辑下载组件时,我从文件系统中选择一个文件,该文件将上载到CRX的文件节点中。此文件节点的父节点获取一个名为fileName
的属性,该属性反映上载文件的文件名
编辑图像组件时,其行为与从文件系统中选择的文件相同,并将其上载到文件
节点,但没有文件名
属性集
查看每个基础组件的对话框,我看到它们有一个<代码>文件名参数,但是在<代码>基础/组件/图像< /代码>的情况下,这只是被忽略了。我需要保留原始上传的
文件名
,如何使用foundation/components/image
我将此JS脚本放入clientlib中,扩展了HTML5 SmartImage
xtype
var MyAppLib = MyAppLib || {};
MyAppLib.NamedHtml5SmartImage = CQ.Ext.extend(CQ.html5.form.SmartImage, {
constructor : function(config) {
config = config || {};
var defaults = {
"transferFileName" : true
};
CQ.Util.applyDefaults(config, defaults);
MyAppLib.NamedHtml5SmartImage.superclass.constructor.call(this, config);
}
});
CQ.Ext.reg("namedhtml5smartimage", MyAppLib.NamedHtml5SmartImage);
然后基于foundation/components/image
创建了一个新组件,并取消了我的xtypenamedhtml5smartimage
而不是对话框选项卡配置中的html5smartimage
。我想我曾经就这个问题向Adobe提交了一个bug。我不确定,但我认为这取决于你使用的浏览器和上传机制。如果我没记错的话,是Firefox和html5上传程序。您可以在覆盖对话框中设置useHTML5=“{Boolean}false”。
var MyAppLib = MyAppLib || {};
MyAppLib.NamedHtml5SmartImage = CQ.Ext.extend(CQ.html5.form.SmartImage, {
constructor : function(config) {
config = config || {};
var defaults = {
"transferFileName" : true
};
CQ.Util.applyDefaults(config, defaults);
MyAppLib.NamedHtml5SmartImage.superclass.constructor.call(this, config);
}
});
CQ.Ext.reg("namedhtml5smartimage", MyAppLib.NamedHtml5SmartImage);