Snažím sa vytvoriť aplikáciu na plánovanie pomocou AngularJS. Hlavnou vlastnosťou je vytvoriť úlohu. Chcem dať zdroj úlohy do smernice:
<section id="runningTasks" ng-controller="RunningTaskCtrl as ctrl">
<task class="task" ng-repeat="task in ctrl.tasks"></task>
</section>
Pre každú úlohu to pridávam do div. Tu je moja definícia smernice:
.directive("task", function(){
return {
restrict: "EA",
replace:"true",
templateUrl: "/Planificator/directives/task/task.html",
link : function(scope, element, attrs){
var date = $(element).find(".datepicker");
date.datepicker();
date.datepicker("option", "dateFormat", "dd-mm-yy");
}
};
})
A obsah task.html:
<div class="task" ng-click="task.editting = true" task>
<h1>{{ task.title }}</h1>
<p>
{{ task.comment }}
</p>
<div class="edit-task" ng-show="task.editting">
<form ng-submit="ctrl.propose(task)">
... form stuff ...
</form>
</div>
</div>
Môj problém je, keď spustím svoju stránku, zobrazí sa chyba:
Error: [$compile:multidir] http://errors.angularjs.org/1.2.26/$compile/multidir?p0=task&p1=task&p2=tem…3D%20true%22%20task%3D%22%22%20ng-repeat%3D%22task%20in%20ctrl.tasks%22%3E
at Error (native)
(čistý odkaz: Generátor uhlovej chyby)
Tento problém som už mal predtým a len som vložil obsah šablóny do ngRepeat a už na to nemyslí, ale tentoraz by som chcel byť vecami v dobrom.
Dakujem za odpovede!
odpovede:
5 pre odpoveď č. 1Váš problém je:
<div class="task" ng-click="task.editting = true" task>
Pretože toto je súčasť šablóny vytvorenej zo smernice o úlohe, pokúšate sa ju pridávať znova a znova.
Zmeniť na:
<div class="task" ng-click="task.editting = true">