出于测试目的,我试图删除一些amd模块并从服务器重新加载更新版本 - 目的是不刷新浏览器.
我目前正在执行以下操作,但浏览器仍然无法从网络重新加载项目.
var scripts = document.getElementsByTagName('script');
var context = require.s.contexts['_'];
for (var key in context.defined) {
if(key.indexOf("tests")>-1){
requirejs.undef(key);
for (var i = scripts.length - 1; i >= 0; i--) {
var script = scripts[i];
var attr = script.getAttribute('data-requiremodule')
if (attr === key){
script.parentNode.removeChild(script);
}
}}
Run Code Online (Sandbox Code Playgroud)
它从上下文中删除引用并成功删除脚本标记.可惜...
有谁知道清除requirejs的所有引用的机制?
任何帮助非常感谢
我们目前正在尝试此实施:
require.onResourceLoad = function(context, map)
{
require.undef(map.name);
};
Run Code Online (Sandbox Code Playgroud)
到目前为止没有任何问题浮出水面.
编辑:IE并不关心这个修复.Chrome和FF很好.
此外,您应该尝试在PhpStorm中进行实时编辑.奇迹般有效.这里可以看到一个演示.仅限Chrome.
| 归档时间: |
|
| 查看次数: |
6974 次 |
| 最近记录: |