• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

Frage zu EJS Template Engine

mit
Code:
angular.module('ewApp', [
  'ngRoute',
  'ngAnimate',
  'ewApp.main', 
  'ewApp.drucken',
  'ewApp.login',
  'ewApp.hilfe',
  'ewApp.speichern'
])
definierst du ein modul. darauf kannst du später nochmal über
Code:
angular.module('ewApp')
zugreifen. wenn du aber wieder abhängigkeiten angibst (also wie ganz oben), will angular wieder ein modul anlegen, das modul 'ewApp' existiert aber schon.
ein weiteres modul kannst du aber problemlos anlegen
Code:
angular.module('ewApp.main', ['ngRoute']);
und dieses auch als abhängigkeit bei einem anderen modul eintragen
 
Super !
Bisher war s nur eine grobe Vorstellung dessen was da im Hintergrund schiefgelaufen ist - jetzt kann ichs auch genau zuordnen, danke!! :eagerness:
 
Kurze Frage ob Code Struktur meiner Directive so passt oder übertrieben kompliziert ist.

In meinem mainView habe ich folgende Direktive ( separate JS-Datei ) mit eigener Controller-Funktion um auf das $scope Objet der mainView zuzugreifen:
Code:
(function () {
  'use strict';

  var app = angular.module('ewApp'); // Root Module

  app.directive('ewLabel', [ewLabel]);

  function ewLabel() {

    interneFunktion("Hallo");

    return {
      restrict: 'E',
      templateUrl: 'assets/templates/directives/label.html',
      controller: directiveController
    };

  }

  function interneFunktion(params) {
    console.log(params + " + aus interner Funktion " );

  }
  function directiveController($scope) {
    console.log("Aus dem DirectiveController Scope: " + $scope.text1 );

  }


} ());

Funktioniert, wackelt und hat Luft. Vor allem ich kanns nachvollziehbar lesen - daher kein Freund anonymer Funktionen.

Jetzt würde es mich nur interessieren ob das eine "saubere" Lösung ist oder übertrieben kompliziert/verschachtelt ist?
 
Zuletzt bearbeitet:
Jetzt würde es mich nur interessieren ob das eine "saubere" Lösung ist oder übertrieben kompliziert/verschachtelt ist?
etwas kompliziert/verschachteltes sehe ich nicht, aber wozu ist die interneFunktion da? den sinn des controllers sehe ich auch nicht. außerdem hast du beim controller dei abhängigkeiten nicht angegeben: controller: ['$scope', directiveController]
 
Danke schon mal für die Antwort!
etwas kompliziert/verschachteltes sehe ich nicht, aber wozu ist die interneFunktion da?
Keine Ahnung, die ist eigentlich nur da um zu sehen ob es funktioniert - falls ich sowas brauchen sollte. Wobei keine Ahnung nicht ganz stimmt -> da ich in diese Direktive ein Logik einbauen möchte welche momentan mehrere Funktionen aufruft.

den sinn des controllers sehe ich auch nicht
Dachte ich brauch einen Controller um auf den scope es mainViews zugreifen zu können - und vor allem dass ich im Controller dann mein Canvas Element erstelle mit dem der User interagiert.

außerdem hast du beim controller dei abhängigkeiten nicht angegeben: controller: ['$scope', directiveController]
Stimmt, danke wird ausgebessert - falls der Controller überhaupt noch bestand hat.

Kann ich dann quasi die Direktive so aussen lassen:
Code:
(function () {
  'use strict';

  var app = angular.module('ewApp'); // Root Module

  app.directive('ewLabel', ["$scope", ewLabel]);
 // app.directive('ewLabel', [ewLabel]);

  function ewLabel() {
//  function ewLabel($scope) {

    console.log("Aus der Direktive Scope: " + $scope.text1 );

    return {
      restrict: 'E',
      templateUrl: 'assets/templates/directives/label.html'
    };

  }


} ());

- - - Aktualisiert - - -

Wobei so haut es mir meine ganze Seite zusammen - da war doch ein paar Antworten weiter oben schon einmal von dir...eiei :confused:

- - - Aktualisiert - - -

Jetzt wird hoffentlich langsam ein runder Angular Schuh draus -> das Erstellen vom Canvas Element inkl. Interaktionen werden in einen Service gelegt.

Wobei mir momentan nicht so recht klar ist wo in Angular die Display-related-Logic aufhört und wo die Business-Logic anfängt.
 
Zuletzt bearbeitet:
Hab es nun mittlerweile soweit zum laufen gebracht. JUHUU!

Hier das Demo: My AngularJS App

Jetzt hab ich nur folgendes Problem:

Wenn ich meine Seite das erste mal aufrufe funktioniert alles wie gewollt -> Text eingeben -> diesen dann im Canvas anzeigen.
Wenn ich nun eine andere View aufrufe und zur Startseite zurück gehe, ist der Canvas-Inhalt verschwunden.
Wenn ich die Seite neu lade ist wieder da.


Das Canvas Element wird in labelService.js initiert und befüllt ...möchte hier jetzt nicht alles mit unnötig Code vollpumpen.

Wenn jemand eine Ahnung woran das liegen könnte oder mehr Code/Infos dazu braucht -> bitte sagen was nötig ist dann post ich den Code natürlich sofort :)


Update: Gelöst :)
 
Zuletzt bearbeitet:
Zurück
Oben