Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/443.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 角度指令获取;主线程上的同步XMLHttpRequest已被弃用;_Javascript_Angularjs_Multithreading - Fatal编程技术网

Javascript 角度指令获取;主线程上的同步XMLHttpRequest已被弃用;

Javascript 角度指令获取;主线程上的同步XMLHttpRequest已被弃用;,javascript,angularjs,multithreading,Javascript,Angularjs,Multithreading,我在控制器中嵌套了一个Angular指令元素,我得到了这个消息 主线程上的同步XMLHttpRequest不推荐使用,因为它会对最终用户的体验产生有害影响。如需更多帮助,请查看。 警告:尝试多次加载角度 我有点理解这意味着什么,但我不知道是什么导致了这个问题。以下是我所拥有的: audio.html <div class="audio-top-bar" ng-controller="AudioController"> <div class="audio-tuner-bu

我在控制器中嵌套了一个Angular指令元素,我得到了这个消息

主线程上的同步XMLHttpRequest不推荐使用,因为它会对最终用户的体验产生有害影响。如需更多帮助,请查看。 警告:尝试多次加载角度

我有点理解这意味着什么,但我不知道是什么导致了这个问题。以下是我所拥有的:

audio.html

<div class="audio-top-bar" ng-controller="AudioController">
    <div class="audio-tuner-button" ng-click="displayTunerModal()">
          <button class="btn">
              <p class="audio-tuner-type">{{tunerButton}}</p>
          </button>
    </div>
    <display-tuner-modal ng-show="visibility"></display-tuner-modal>
</div>
displayTunerModal.js

angular.module('app').controller('AudioController', ['$scope', 'TunerService', function($scope, TunerService){
    $scope.visibility = false;

    if ($scope.tunerButton == (null || undefined))
        $scope.tunerButton = 'FM';
    $scope.displayTunerModal = function(){
        $scope.visibility = true;
    };
}]);
angular.module('app').directive('displayTunerModal', ['TunerService' , function (TunerService){

    return {
        restrict: 'E',
        link: function(scope, elem, attrs){
            scope.displayTunerModal = function(){
                console.log("CLICKED");
            };
        },   
        templateUrl: 'public/templates/displayScreenModal.html'
    };  
}]);

很抱歉,问题很简单,指令中的链接名称不正确。我应该有“displayTunerModal.html”


这个故事的寓意是:检查你的链接。

我很抱歉,问题很简单,就像指令中的链接名称不正确一样。我应该有“displayTunerModal.html”

故事的寓意:检查您的链接。

根据我的经验,在我的生产服务器上的AngularJS指令中,主线程上相同的
同步XMLHttpRequest已被弃用
,而在我的本地环境中没有此类错误

在我的例子中,这是由于模板名称与js请求的大小写不匹配造成的:

  • AngularJS(在我的情况下是一个指令)请求小写的
    mytemplate.tmpl.html
  • 模板文件以camelCase命名:
    myTemplate.tmpl.html
使问题困惑的是,指令/模板在Mac上运行良好(由于),但在推送到AWS生产服务器时失败

将模板文件名更改为小写可以解决此问题

正如上面的一条评论所提到的,AJAX错误具有误导性,因为它意味着特定调用出现错误,而不仅仅是文件“丢失”

在我的例子中,这是由于模板名称与js请求的大小写不匹配造成的:

  • AngularJS(在我的情况下是一个指令)请求小写的
    mytemplate.tmpl.html
  • 模板文件以camelCase命名:
    myTemplate.tmpl.html
使问题困惑的是,指令/模板在Mac上运行良好(由于),但在推送到AWS生产服务器时失败

将模板文件名更改为小写可以解决此问题


正如上面的一条评论中提到的,AJAX错误具有误导性,因为它暗示了特定调用的错误,而不仅仅是文件“丢失”。

显示的代码中没有任何内容与众所周知的XMLHttpRequest所称的AJAX有关。很抱歉,问题很简单,就是链接的名称不正确。我应该有“displayTunerModal.html”。显示的代码中没有任何内容与众所周知的XMLHttpRequest所称的ajax有关。很抱歉,问题很简单,只是链接的名称不正确。我应该有“displayTunerModal.html”。请不要添加到多个问题中。回答最好的一个,并将其余的标记为重复项。请看@PetterFriberg在打电话之前阅读(并理解)这两个问题。它们不是重复问题,因此不能标记为重复问题。这是一个令人困惑的编码错误(带有一个措辞拙劣/误导性的错误消息),浪费了我大量的时间,所以我在两个问题中都提出了解决方案——因为这个答案是两种(略有不同)情况下的具体解决方案。此外,我在这个答案中链接了我的原始答案的问题(为了透明和有用)。请不要在多个问题中添加。回答最好的一个,并将其余的标记为重复项。请看@PetterFriberg在打电话之前阅读(并理解)这两个问题。它们不是重复问题,因此不能标记为重复问题。这是一个令人困惑的编码错误(带有一个措辞拙劣/误导性的错误消息),浪费了我大量的时间,所以我在两个问题中都提出了解决方案——因为这个答案是两种(略有不同)情况下的具体解决方案。此外,为了透明和有用,我在这个答案中联系了我最初回答的问题。