0

我正在填充 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 模块,查询字符串缓存也保持不变,并且我被旧资产困住了。

有没有办法打破它?还是我做错了?

包.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');
4

1 回答 1

0

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

我改变了这样的要求:

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

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

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

于 2016-07-15T18:26:12.043 回答