Bir inceleme sistemini simüle etmeye çalışıyorum. Ng gönderim denetleyiciye değerleri nasıl iletir? Benim denetleyicisi olarakdeğerleri ng'den tasarruf edilmiyor textarea için gönderme
benim görünümünde
$scope.reviews = function() {
$scope.rating = 0;
$scope.max = 5;
};
$scope.myTextArea = '';
$scope.saveReview = function(rating, myTextArea) {
console.log(rating);
console.log(myTextArea);
};
var, var: Ben formu gönderdiğinizde
<form name="reviewForm" class="form-horizontal" ng-submit="saveReview(rating, myTextArea)" novalidate>
<div>
<rating ng-model="rating" max="max" aria-labelledby="'product.title'"></rating>
</div>
<div>This is the rating: {{rating}}</div>
<div class="animate-switch" ng-switch-when=true>
<textarea ng-model="myTextArea" class="form-control" placeholder="Write a short review of the product." title="Review"></textarea>
</div>
<button type="submit" class="btn btn-primary pull-right">Submit Review</button>
</form>
, saveReview işlevi çıktı denilen ve edilecek konsolda 0 ve ''. Yani, hiçbir değer kaydedilmiyor/geçirilmiyor. Ng-model derecelendirme 5 yıldız gösterir ve eğer 4 yıldıza tıklarsanız, {{rating}} görünecektir 4.
Herhangi bir fikir?
hmm belki de bazı bilgileri dışarıda bıraktım. Şu bölümlerin ekranlarını görüntülüyorsunuz: ürün adı seçilebilir yıldız 2 veya daha az yıldız seçildiğinde özel inceleme kutusu Yani, eğer değişkenleri kapsüllüyorsam, yıldızları dağıtmaya başlarım. İnceleme kodu şudur: $ scope.reviews = işlev() { $ scope.products = Products.query(); $ scope.review.rating = 0; $ scope.max = 5; }; Bu inceleme işlevini, sayfanın başlangıcında çağırıyorum. –
Kapsülleme, verileri başka herhangi bir işlem için iletmeyi kolaylaştırır, hiçbir şeyi etkilememelidir. Gönderimin o anda sadece bir girişte çalıştığını varsayıyorum. Yani eğer girdiler üzerinde döngü yapıyorsanız, o zaman daha anlamlı olur. Sadece kaydetme işlevinin argüman almasına izin vermeyin ve değişkenleri kapsamdan kullanın. Else asıl sorunun ne olduğu hakkında daha fazla bilgiye ihtiyacım var. – Vaelyr
Girdi ve hızlı yanıtlar için teşekkürler. Üzerinde biraz daha çalışıyorum. Ben açısal çok yeni. Tavsiye etmeyi umduğunuz kaynakları takdir ediyorum. –