【问题标题】:CKEditor assets cached using shimmed package.json with grunt-browserifyCKEditor 资产使用 shimmed package.json 和 grunt-browserify 缓存
【发布时间】:2016-11-18 23:38:28
【问题描述】:

我正在填充 CKedtior 以在我的 CommonJS 模块化 javascript 包中使用。 我遇到的问题是 CKEditor 资产被缓存在某处。我认为是browserify,但我不完全确定。

缓存的资产是这样的:

<script type="text/javascript" src="http://192.168.68.8/cart-admin/ckeditor_4.5.6/config.js?t=FB9E"></script>

这个资产不是手动放到页面上的,它是由CKEditor在JS模块运行时生成的。

如上所示,查询字符串缓存资产。但是,如果我更新 config.js,资产仍会被缓存并提供旧版本。即使我重新构建了我的 javascript 模块,查询字符串缓存也保持不变,并且我被旧资产卡住了。

有办法破解吗?还是我做错了?

package.json

"browser": {
  "ckeditor": "./ckeditor_4.5.6/ckeditor.js",
  "ckjquery": "./ckeditor_4.5.6/adapters/jquery.js"
},
"browserify-shim": {
  "ckeditor": "ckeditor",
  "ckjquery": "ckjquery"
}

JS 模块

window.CKEDITOR_BASEPATH = 'ckeditor_4.5.6/';
require('ckeditor');
require('ckjquery');

【问题讨论】:

    标签: javascript caching browserify package.json grunt-browserify


    【解决方案1】:

    我在这里找到了答案: Force CKEDITOR to refresh config

    我改变了要求:

    window.CKEDITOR_BASEPATH = 'ckeditor_4.5.6/';
    require('ckeditor');
    require('ckjquery');
    CKEDITOR.timestamp='';
    

    CKEDITOR.timestamp=''; 是关键。现在 ?t= 缓存字符串不再附加资产 url。

    不确定这是否“正确”,但它确保我使用的是最新的文件。也许在生产中我会添加一个版本化的查询字符串......

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-10-04
      • 2023-03-04
      • 1970-01-01
      相关资源
      最近更新 更多