Próbuję przesłać plik w AngularJS przy użyciu ng-upload, ale mam problemy. Moje html wygląda następująco:AngularJS Przesyłanie obrazu z ng-upload
<div class="create-article" ng-controller="PostCreateCtrl">
<form ng-upload method="post" enctype="multipart/form-data" action="/write" >
<fieldset>
<label>Category</label>
<select name="category_id" class="">
<option value="0">Select A Category</option>
<?php foreach($categories as $category): ?>
<option value="<?= $category -> category_id; ?>"><?= $category -> category_name; ?></option>
<?php endforeach; ?>
</select>
<label>Title</label>
<input type="text" class="title span5" name="post_title" placeholder="A catchy title here..." value="<?= $post -> post_title; ?>" />
<label>Attach Image</label>
<input type="file" name="post_image" />
<a href='javascript:void(0)' class="upload-submit: uploadPostImage(contents, completed)" >Crop Image</a>
<label>Body</label>
<div id="container">
<textarea id="mytextarea" wrap="off" name="post_content" class="span7" placeholder="Content..."><?= $post -> post_content; ?></textarea>
</div>
<div style='clear:both;'></div>
<label>Preview</label>
<div id='textarea-preview'></div>
</fieldset>
<div class="span7" style="margin: 0;">
<input type="submit" class="btn btn-success" value="Create Post" />
<input type="submit" class="btn btn-warning pull-right draft" value="Save as Draft" />
</div>
</form>
</div>
A mój kontroler js wygląda następująco:
ClabborApp.controller("PostCreateCtrl", ['$scope', 'PostModel',
function($scope, PostModel) {
$scope.uploadPostImage = function(contents, completed) {
console.log(completed);
alert(contents);
}
}]);
Problem jestem stoi to gdy obraz upraw jest trafiony i wykonuje uploadPostImage, to przesyła cały formularz . Nie pożądane zachowanie, ale mogę sprawić, żeby działało. Duży problem polega na tym, że parametry funkcji "upload" parametru uploadPostImage są zawsze niezdefiniowane, nawet jeśli "zakończony" parametr powraca jako prawdziwy.
Celem jest tylko przesłanie obrazu do kadrowania. Co robię źle w tym procesie?
Odwiedź tutaj, aby uzyskać prosty samouczek przesyłania zdjęć za pomocą kątowego. To naprawdę pomogło mi https://www.tutorialspoint.com/angularjs/angularjs_upload_file.htm –