• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

AngularJS problem z zaleznosciami (dataTables)

Object Storage Arubacloud
0 głosów
178 wizyt
pytanie zadane 15 stycznia 2016 w Rozwój zawodowy, nauka, praca przez Voudubu Użytkownik (740 p.)

Problem chyba prosty do rozwiązania, ale jakoś sobie z tym poradzić nie mogę. Moją tabelkę chcę wyświetlić przy pomocy plugina DataTables i AngularaJS. Error jaki mi wyskakuje to:

Uncaught Error: [$injector:modulerr] 

Jesli chodzi o Angulara to mam folder o nazwie "app". Tam jest plik "app.js" oraz folder z controllerami (dwa controllery). Ten pierwszy robi zupelnie coś innego, a ten drugi jest właśnie pod DataTables. Pierwszy działa bez zarzutów, sprawdzałem. Jednak jeśli chodzi o ten drugi to wyskakuje w/w error. Jestem prawie pewien, że problem jest z jedna linijka w "app.js":

var app = angular.module('app', ['datatables', 'BookController' 'MovieController']);

W BookController jest zawarty kod DataTables a w MovieController ten drugi - robiący zupełnie coś innego. Moj kod:

BookController:


angular.module('BookController', [])
    .controller('BookCtrl', ['$scope', '$http', 'DTOptionsBuilder', 'DTColumnBuilder',
    function ($scope, $http, DTOptionsBuilder, DTColumnBuilder) {
        $scope.dtColumns = [
            DTColumnBuilder.newColumn("BookId", "Customer ID"),
            DTColumnBuilder.newColumn("BookTitle", "BookTitle"),
            DTColumnBuilder.newColumn("BookDescription", "BookDescription"),
            DTColumnBuilder.newColumn("BookAuthor", "BookAuthor"),
            DTColumnBuilder.newColumn("BookGenre", "BookGenre"),
            DTColumnBuilder.newColumn("BookRating", "BookRating"),
            DTColumnBuilder.newColumn("ReleaseDate", "ReleaseDate")
        ]

        $scope.dtOptions = DTOptionsBuilder.newOptions().withOption('ajax', {
            url: "/Home/getdata",
            type: "POST"
        })
        .withPaginationType('full_numbers')
        .withDisplayLength(10);
    }]);

 

MovieController(to tylko zeby sprawdzic czy angular dobrze dziala, no i dziala bo odbiera ten controller)

angular.module('MovieController', [])
        .controller('MovieCtrl', ['$scope', '$http', function ($scope, $http) {
            $scope.myThing = "qqqqq";
        }]);

Gdy nie mam zawartego kodu odnośnie DataTables w controllerze "Book" to wszystko prawidłowo działa, dwa controllery działają bez problemu, dopiero gdy próbuje robić coś w "BookCotroller" właśnie z kodem DataTables to wyskakuje ten error. Jestem prawie pewien, że problem jest właśnie z tym angular.module i tymi referencjami, ale za nic nie wiem jak to rozwiązać, próbowałem już wszystko co mi do głowy przyszło i nic.

Tutaj z tego tutoriala korzystam jeśli chodzi o tą tabelkę:

http://www.dotnetawesome.com/2016/01/datatables-in-angularjs-and-aspnet-mvc.html

1 odpowiedź

0 głosów
odpowiedź 15 stycznia 2016 przez Comandeer Guru (601,590 p.)
komentarz 15 stycznia 2016 przez Voudubu Użytkownik (740 p.)
Tez to juz wcześniej próbowałem, dodając do module ten właśnie ngRoute, ale cały czas ten sam error.
komentarz 15 stycznia 2016 przez Comandeer Guru (601,590 p.)
Wygląda jakbyś nie załączał jakiejś zależności. Musiałbyś przeszperać kod.
komentarz 15 stycznia 2016 przez Voudubu Użytkownik (740 p.)
Gdy usunę z BookControllera wszystko zależności od DataTables czyli: 'DTOptionsBuilder', 'DTColumnBuilder', to wszystko działa normalnie, tzn. controller Book odpowiada. Znalazłem dwa przykłady na jsfiddle więc jutro je obadam i dam znać najwyżej.

Podobne pytania

+1 głos
0 odpowiedzi 519 wizyt
pytanie zadane 25 stycznia 2022 w JavaScript przez Sebastian Szyja Bywalec (2,810 p.)
0 głosów
1 odpowiedź 135 wizyt

92,583 zapytań

141,434 odpowiedzi

319,669 komentarzy

61,966 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...