Ответ 1
TL; DR;. Проблема заключается в том, что атрибуты змеиный случай, и определение области превращает их в camelCase.
У вас есть:
app.directive('childOne', function () {
return {
restrict: "E",
replace: true,
scope: {
labelName: "@",
selectPhrase: "@",
ngModel: "=",
options: "=",
},
template: '<span><div class="local-label">{{labelName}}: </div><div style="width:15px;display:inline-block;"></div>' +
'<span style="display: inline-block;"><select ng-model="ngModel" ng-options="o.Id as o.Name for o in options | orderBy:\'Name\'" class="formRequire" required><option value="" selected="selected">{{selectPhrase}} ...</option></select>' +
'</span></div></span>'
};
})
Проблема заключается в том, что вы связываете ngModel, но элемент child-one не предоставляет значения для него. Если я прокомментирую эту часть, она, похоже, работает нормально.
Похоже, что когда у вас есть привязки "=" , это означает обязательный, также атрибуты преобразуются из змеиного футляра в camelCase когда определено в javascript мире
PS: Это правда, что ошибка немного расплывчата.