不匹配的匿名define()模块:function(){"use strict"; return ax}

Jam*_*ins 9 javascript model-view-controller browser-link

出于某种原因,我有这个奇怪的错误:

"不匹配的匿名define()模块:function(){"use strict"; return ax} http://requirejs.org/docs/errors.html#mismatch "

设置了一些JS断点后,我在这里找到了错误源:

a [browserlink] Line 363: 
    /*! aXe v2.0.5
 * Copyright (c) 2016 Deque Systems, Inc.
 * ...etc... */
...etc...&&define([],function(){"use strict";return axe}),...etc...
Run Code Online (Sandbox Code Playgroud)

因此,实现它是在动态生成的"browserlink"代码中,我在Visual Studio中禁用了"browserlink",问题就消失了(一切都很完美,没有问题).它似乎function(){"use strict";return axe}陷入了requirejs队列?('defQueue')首次启动Web应用程序时会发生这种情况,但是没有错误YET.只有在我执行使用requirejs的操作时才会发生错误.经过一些分析,我发现这个函数在requirejs中:

//Grab defines waiting in the global queue.
intakeDefines();
Run Code Online (Sandbox Code Playgroud)

在这里失败:

while (defQueue.length) {
    args = defQueue.shift();
    if (args[0] === null) {
        return onError(makeError('mismatch', 'Mismatched anonymous define() module: ' + args[args.length - 1]));
Run Code Online (Sandbox Code Playgroud)

其中args == [null,[],"function(){"use strict"; return ax}"]

问题是,任何人都可以帮我弄清楚为什么会出现这种冲突吗?这是VS browserlink的某种错误吗?

小智 12

这似乎与WebAccessibilityChecker如此相关,所以尝试禁用扩展,然后它应该再次工作.

我已经在这里创建了一个问题.


Jam*_*ins 7

我在问题中确实提到了这一点,但对于那些寻找解决方案的人来说,一个解决方法是暂时禁用visual studio中的"browserlink".