调试器仅在打开时出现Google Chrome扩展程序错误

时间:2016-05-03 03:25:47

标签: javascript angularjs google-chrome google-chrome-extension

我正在尝试向google Chrome扩展程序内的服务器发送ajax请求。我也使用角度,代码在控制器内。请求通常工作正常,但是当我打开DevTools时会抛出错误。这是代码的相关部分:

    $scope.sendLink = function (){
        chrome.tabs.query({'active': true, 'lastFocusedWindow': true}, function (tabs) {
            var url = tabs[0].url;
            var date = new Date();
            var xPost = new XMLHttpRequest();
            xPost.open("POST", **URL HERE*",true);
            xPost.setRequestHeader("Content-type", "application/json");
            xPost.send(JSON.stringify({"name":$scope.name,"url":url,"date":date}));
        });

    }

当我点击扩展名上的inspect元素,然后执行请求时,tabs数组返回为空。如果devTools窗口关闭,它可以正常工作。我无法弄清楚为什么会这样。任何解释都将不胜感激!

1 个答案:

答案 0 :(得分:0)

您可以通过chrome-dev-tools更改javascript引擎行为。只有在dev-tools打开时才会激活它。

例如,一旦我发现我的配偶使用chrome-dev-tools关闭了javascript。当chrome-dev-tools打开时,他的应用程序没有执行...