0
페이지에 index.html이라는 페이지가 있는데이 페이지에 add-circle-form이라는 구성 요소가 삽입되었습니다.
원하는 작업 :ng-model에서 정의되지 않은 값입니다. 오류 : 표현식에서 '정의되지 않은'표현식 ... 할당 할 수 없음
add-circle-form.js에 사용자 선택 사항을 저장하고 add-circle-form에서 옵션 목록을 클릭하면 index.js로 데이터를 전달하고 싶습니다. .html.
index.html을
<add-campaign-form
on-submit="submit()"
selectedCircles="selectedCircles"></add-campaign-form>
하는 index.js (index.html을의 컨트롤러) : 아래
Error: [$compile:nonassign] Expression 'undefined' in attribute 'selectedCircles' used with directive 'addCircleForm' is non-assignable!
http://errors.angularjs.org/1.5.11/$compile/nonassign?p0=undefined&p1=selectedCircles&p2=addCampaignForm
at angular.js:68
at parentSet (angular.js:10216)
at parentValueWatch (angular.js:10229)
at regularInterceptedExpression (angular.js:16355)
at Scope.$digest (angular.js:17828)
at Scope.$apply (angular.js:18102)
at HTMLElement.s (angular-material.min.js:11)
at defaultHandlerWrapper (angular.js:3546)
at HTMLElement.eventHandler (angular.js:3534)
내 코드입니다 : 내가 드롭 다운 목록에서 클릭 할 때, 오류가 발생했습니다 어디 내가 객체를 정의
selectedCircles 여기 :
function($scope) {
$scope.selectedCircles = {};
}
부가 원 - form.html (성분)
<md-input-container>
<label>Target Circles</label>
<md-select ng-model="$ctrl.selectedCircles"
md-on-close="clearSearchTerm()"
multiple>
<md-select-header>
<input ng-model="searchTerm"
type="search"
placeholder="Search for a circle.."
class="target-circles-header-searchbox md-text">
</md-select-header>
<md-optgroup label="circles">
<md-option ng-value="circle" ng-repeat="circle in circles |
filter:searchTerm">{{circle}}</md-option>
</md-optgroup>
</md-select>
</md-input-container>
부가 원 - form.js (ADD-form.html 써클의 제어기)를 추가 써클 형태에
$scope.circles = ['Circle A', 'Circle B', 'Circle C', 'Circle D'];
$scope.searchTerm;
$scope.clearSearchTerm = function() {
$scope.searchTerm = '';
};
$element.find('input').on('keydown', function(ev){
ev.stopPropagation();
});
바인딩 의 .js
bindings: {
onSubmit: '&',
selectedCircles: '='
}
나는 문제가 나는 NG 모델 = "$ ctrl.selectedCircles"를 사용하고 있다고 생각하지만 난 이미 정의한대로 나는 $ ctrl.selectedCircles에 값을 할당 할 수 없습니다 내가 왜 아무 생각이 없다 양방향으로 묶었습니다. 데이터를 index.js로 전달하는 방법을 제안 해 주시겠습니까?
네, 나는이 솔루션의 작업을 수행하는 방법을 알 수 있습니다, 지금 나를 위해 작동? 나는 왜 거기에 선정 된 원을 놓을 수 없는지 의미합니까? – nanopotato
@nanopotato 확인 this http://stackoverflow.com/questions/25807763/custom-angular-directive-including-a-dash-in-the-name-doesnt-work?answertab=active#tab-top –