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

时间:2016-08-20 03:31:57

标签: javascript model-view-controller browser-link

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

  

"不匹配的匿名define()模块:function(){" use strict&#34 ;; 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...

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

//Grab defines waiting in the global queue.
intakeDefines();

在这里失败:

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

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

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

2 个答案:

答案 0 :(得分:12)

这似乎与WebAccessibilityChecker有关,因此尝试禁用扩展程序,然后它应该再次运行。

我已经为here创建了一个问题。

答案 1 :(得分:7)

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