1

angularjsでファイルをアップロードするためにリダイレクトせずにアップロードするために、このリンクnodejs + multer + angularjsの回答を使用 しました。これは完全に機能します。

私の要件によると、角度のあるhtmlファイルのコードを編集しました(ng-switchを追加):

<div ng-switch="MyVar">

    <div ng-switch-when="car">
        <input type="file" file-model="myFile"/>
        <button ng-click="uploadFile()">Upload</button>
    </div>

    <div ng-switch-when="dog">
        dog
    </div>
</div>

他のすべてのファイルはまったく同じです。

ng-switch は正しく動作します。

しかし、この変更の後、ファイルのアップロードが機能しなくなります (ファイルが送信されないため、サーバー エラーが発生します)。リンクのようにスイッチ部分を削除すると、正常に動作します。

$scope.myFile は、ファイルを選択した後でも null を表示します。

ng-switch が問題を引き起こしているのはなぜですか?

助けてください

4

1 に答える 1

1

ng-switch は独自のスコープを作成すると思います。を使ってみてくださいfile-model="$parent.myFile"。この質問はおそらく関連しています: angularjs - ng-switch は ng-model をバインドしません

于 2016-03-07T03:51:45.173 に答える