在是/否的基础上将控制器中的项目保存到数组中

Save items from controller into array on Yes / No basis

在使用 angularJS 时遇到了一些问题,我只用了两个星期,而且我的 javascript 知识也不存在,所以请考虑到这一点。

我目前正在制作一个听力测试应用程序,除了我内置的报告系统外,所有功能都可以正常工作。

我想根据是/否记录他们从这两个按钮听到声音的频率和分贝。

<button ng-click='' type="button" class="btn btn-primary btn-lg  glyphicon glyphicon-ok"></button>
<button ng-click='' type="button" class="btn btn-default btn-lg  glyphicon glyphicon-remove"></button>

这里以我的一个 125HZ 0DB 控制器为例。

// 125 FREQUENCY START
myApp.controller('125Zero', ['$scope','ngAudio', function($scope, ngAudio) {

    $scope.title = "Frequency: 125Hz";
    $scope.frequency = "0Db"; 
    $scope.sound = ngAudio.load("audio/125_0.mp3"); // returns NgAudioObject
    $scope.previous =""
    $scope.next ="125Ten"
}]);

我希望将 $scope.title 和 $scope.frequency 属性记录到数组中以供以后处理。

这就是我的想法

function result() {
$scope.results = [];


  $scope.resultService = function(){
    $scope.results.push();  
  }

}

没有结果,我想将标题和频率都保存到数组中,并允许程序移动到下一个控制器,如果听到频率则执行相同的操作。

感谢您的帮助或想法。

如果我的代码不是最干净或理想的,我深表歉意,但正如我所解释的,这是我使用 AngularJS

的第二周

谢谢。

Add event listeners to the buttons:

<button ng-click='buttonPressed('okay")' type="button" class="btn btn-primary btn-lg  glyphicon glyphicon-ok"></button>
<button ng-click='buttonPressed("remove")' type="button" class="btn btn-default btn-lg  glyphicon glyphicon-remove"></button>

在您的控制器中,添加这些方法:

myApp.controller('125Zero', ['$scope','ngAudio', function($scope, ngAudio) {

    $scope.title = "Frequency: 125Hz";
    $scope.frequency = "0Db"; 
    $scope.sound = ngAudio.load("audio/125_0.mp3"); // returns NgAudioObject
    $scope.previous ="";
    $scope.next ="125Ten";

    $scope.buttonPressed= function(outcome) {
       $scope.result = [];
       var tempObj = {};
           tempObj.title = $scope.title;
           tempObj.frequency = $scope.frequency; 
            // check for outcome to find out if it's okay or remove. 
            //based on that set the frequency here.
           $scope.result.push(tempObj);
           // add this to service
    } 
    }]);

要在下一个控制器中获取此值:

您需要将 $scope.result 存储在服务中。因此,创建一个服务并将 $scope.result 推入该服务。

在你的第二个控制器中,将该服务作为依赖项注入并访问那里的值。