AngularJS, requireJS und ngRoute

Baue ich ein Adressbuch, um zu erfahren, Winkel-und haben es wunderbar funktioniert bis ich versuche, die route manager. Das Problem mit dem laden der Winkel-route-manager über benötigen. Ich bin immer folgende Fehlermeldung "Uncaught object".

Es wurden Fragen zu diesem, aber Sie entfernt wurden, durch den Benutzer, und andere Antworten zeigen auf nicht mit im Lieferumfang enthalten das ngRoute Abhängigkeit in der ng.Modul-Abhängigkeit-Liste, oder nicht verlangen, überhaupt. Ich bin nicht mit viel Glück eine Antwort zu finden!

Ich habe die eine HTML-Datei mit einer require config-Datei:

requirejs.config({
  paths: {
    'jquery': ['//ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min'],
    'angular': ['//ajax.googleapis.com/ajax/libs/angularjs/1.2.16/angular.min','angular_1.2.16.min'],
    'angular-route': ['//ajax.googleapis.com/ajax/libs/angularjs/1.2.16/angular-route.min','angular-route_1.2.16.min'],
  },
  shim: {
    'jquery': {
      exports: 'jquery'
    },
    'angular': {
      exports: 'angular'
    },
    'angular-route': {
      exports: 'ngRoute',
      deps: ['angular']
    } 
  },
  baseUrl: 'js/lib'
})

require(['modules/ContactsMod'], function() { });

- und dies ist die ContactsMod.js Datei namens am Ende der config-Datei:

define(['jquery', 'angular-route','angular','controllers/ContactsCtrl','routes/ContactsRout'],function($,ngRoute,ng,controller,router) {

// var contactsApp = ng.module('contactsApp', [ngRoute]);

// contactsApp.config(function ( $routeProvider, $locationProvider ){
//   $log.debug( "Configuring $routeProvider...");
//
//   $locationProvider.html5Mode(true);  //?????
//
//   $routeProvider
//     .when( '/', {
//       templateUrl : "views/Contacts.html",
//       controller  : "controller"
//     })
//     .otherwise({ redirectTo: '/' })
// })

    var contactsApp = ng.module('contactsApp', []);
    contactsApp.controller(controller);
    ng.bootstrap(document, ['contactsApp']);


});

Den auskommentierten Abschnitt ist der Teil, den ich versuche zu herauszufinden. Die obige version funktioniert, aber wenn ich versuche, um das ngRoute Zusammenhang mit der ng.Modul-Aufruf in den auskommentierten Teil bekomme ich die genannten Fehler.

Kann ich sehen, dass alle Elemente geladen wurden, bevor das Modul aufgerufen wird. Aber ich kann auch sehen, dass das ngRoute-Protokolle als undefiniert, so macht es Sinn, dass es nicht funktioniert! Ich habe versucht eine Reihe von verschiedenen config-Varianten. Mag auch die angular-route als eine Abhängigkeit von Winkel (die den gleichen Fehler ein weiteres plus von " Uncaught TypeError: Cannot read property 'Modul' undefined').

Kann ich sehen, dass es eine seed-app, die verwendet benutzerdefinierte async-loader statt fordern... was empfehlen Sie?

Ich weiß nicht, wie zu Debuggen dieses Problems, jede Hilfe oder Hinweise dankbar!

  • Ich weiß nicht viel über RequireJS, aber ich bin ziemlich sicher, eckig.Modul erwartet ein array von strings als seine Abhängigkeiten, z.B. ng.module('contactsApp', ['ngRoute']);
  • Vielen Dank - hab ich korrigiert... aber die gleichen Fehler, wie ich glaube nicht, dass das Modul im Umfang.
  • Hmm, das ist merkwürdig. Es laden soll, das ngRoute-Modul auf die gleiche Weise wie Lasten, Winkel, zumindest, so würde man denken.
  • Vielleicht werfen Sie einen Blick auf github.com/tnajdek/angular-requirejs-seed und sehen, was Sie anders machen?
  • Es ist nicht so einfach zu verwenden, AngularJS und RequireJS. Schauen Sie sich meine Antwort an stackoverflow.com/questions/23929498/...
InformationsquelleAutor GetafixIT | 2014-06-13
Schreibe einen Kommentar