Angularjs حدد الافتراضي عند التحميل عن بعد
-
21-12-2019 - |
سؤال
أحاول الحصول على قيمة افتراضية في عنصر SELECT باستخدام الزاوي، ويبدو أنه لا يعمل.بغض النظر عما أفعله، فهو دائمًا يختار عنصرًا افتراضيًا فارغًا، عندما يتم تحميل البيانات عن بعد في وحدة التحكم
هذا هو HTML الخاص بي:
<select
ng-options="Domain.Name for Domain in Domains"
ng-model="CurrentDomain"
ng-init="CurrentDomain = Domains[0]"
></select>
إليك رمز وحدة التحكم ذات الصلة:
$scope.Domains = $resource('api/domain').query();
$scope.CurrentDomain = $scope.Domains[0];
أدرك أن هذا السؤال قد تم طرحه عدة مرات، وقد قرأت جميع الأسئلة الأخرى، ولكن لا يبدو أن أيًا من الاقتراحات يعمل.إذا كان لدى أي شخص أي اقتراحات أخرى، واسمحوا لي أن أعرف.
شكرًا.
المحلول
المشكلة في الوعد $scope.Domains
وعد وبانتظار حلها.لذا، $scope.Domains[0]
غير محدد في ذلك الوقت.
لذا فإن الكود الصحيح هو كما يلي
var Domains = $resource('api/domain').query(function(){
$scope.Domains = Domains;
$scope.CurrentDomain = Domains[0];
});
نسخة بلونكر - http://plnkr.co/edit/ppjSWDKT4lHWvEcY0PMC?p=preview
تشير إلى https://github.com/angular/angular.js/issues/4298, ng-init
لم يعد قادرا على حل الوعد.
لا تنتمي إلى StackOverflow