javascript - Ext JS 3.4 图像刷新

标签 javascript extjs extjs3

我正在使用 Ext JS 3.4,每当我打开带有新源的新窗口时,图像都保持不变。我记录了 src 路径,它每次都在变化,但我不知道为什么它一直向我显示相同的图像。

我已经查找了几个小时,但 getCmp().getView().refresh() 或似乎与此问题相关的任何函数都没有包含在 3.4 中。

var image = new Ext.BoxComponent({
    autoEl: {
        tag: 'img',
        width: 90,
        height: 250,
        src: img_path
    }
});

我是这样弄的,尝试打开

new_win = new Ext.Window( ... );

(更具体地说是在 vbox 的一侧)。 我多次检查 image.autoEl.src 已更新,但 new_win 一直显示我之前显示的第一张图片。任何人都可以给我解决方案或至少任何类型的建议吗?

最佳答案

问题是浏览器缓存。浏览器默认缓存 GET 请求中的所有资源

ExtJS 有一个连接到 disable caching 的配置为 GET 请求添加一个独特的 cache-buster 参数

img_path最好加上唯一参数

代码应该是这样的

autoEl: {
            tag: 'img',
            width: 90, 
            height: 250, 
            src: Ext.urlAppend(img_path, '_dc=' + (new Date().getTime())) 
        }

关于javascript - Ext JS 3.4 图像刷新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50238973/

相关文章:

javascript - 如何在 React Native 的多子父 View 中将一个子垂直居中

javascript - 如何在 Javascript 中对英文和中文混合进行字数统计

javascript - 使用单选按钮重置下拉列表的值

javascript - 如何找到最近的父组件?

javascript - Ext.tip 中的强制高度和滚动条(Extjs 3.4)

javascript - this.fireEvent 不工作 extjs3

javascript - 在单击选中值之前显示初始选中值

javascript - Ext.tree.TreeNode设置tooltip动态

css - Extjs fieldset - 折叠时删除标题后的行

javascript - ExtJS 3.4 MessageBox 按钮是、否奇怪的行为