从我的控制器中的指令访问 blob (角度)

Access blob from directive in my controller (Angular)

本文关键字:blob 角度 访问 指令 我的 控制器      更新时间:2023-09-26

我希望我的控制器访问存储在指令中的 blob。基本上,我正在使用这个角度录音机,我想将生成的.wav文件保存到磁盘(我使用的是NWJS(。

知道如何编写文件,但我不知道如何从控制器访问 blob,我不能简单地编写$scope.myBlob = audioModel,因为我得到了"audioModel is not defined"

任何想法将不胜感激

<div class="row" ng-controller="audiotest">
<ng-audio-recorder id='audioInput' audio-model='recordedInput'>
  <!-- Start controls, exposed via recorder-->
  <div ng-if="recorder.isAvailable">
    <button ng-click="recorder.startRecord()" type="button" ng-disabled="recorder.status.isRecording">
        Start Record
    </button>
    <button ng-click="recorder.stopRecord()" type="button" ng-disabled="recorder.status.isRecording === false">
        Stop Record
    </button>
    <button ng-click="recorder.playbackRecording()" type="button"
            ng-disabled="recorder.status.isRecording || !recorder.audioModel">
        Play Back
    </button>
  </div>
  <div ng-if="!recorder.isAvailable">
    Message for users when recording is not possible.
  </div>
  <!-- End controls-->
</ng-audio-recorder>
</div>

根据标记中的这些行,看起来audioModelrecorder上的字段,它位于您的$scope上。

<button ng-click="recorder.playbackRecording()" type="button"
        ng-disabled="recorder.status.isRecording || !recorder.audioModel">
    Play Back
</button>

因此,我不希望这有效:

$scope.myBlob = audioModel;

但我希望这能做点什么:

$scope.myBlob = $scope.recorder.audioModel;
知道了

,blob 实际上绑定在音频模型属性中 - audio-model='recordedInput' ,即我可以通过$scope.myBlob = $scope.recordedInput"在控制器中访问它