Witam, mam problem z http.get. Gdy wrzucam dane w kontroler wszytko dziala tak jak trzeba, jednak gdy wrzucam dane do pliku skoczkowie.json i próbuje je pobrać przez kontroler to nic sie nie wyświetla, czy ktoś widzi tutaj błąd?
Kod możesz wstawiać na forum, nie rób screenów tylko wklej w odpowiednich tagach.
A skąd bierzesz ten plik? Do jakiegoś serwisu się odwołujesz?
https://docs.angularjs.org/api/ng/service/$http
tutaj jest dokumentacja http.get, nie wiem czy za jego pomocą możesz pobrać dane z pliku na dysku, jeśli to próbujesz osiągnąć. To by było trochę dziwne w sumie :)
dane json chce pobrac z pliku skoczkowie.json na drugim obrazku widac pliki i tam jest skoczkowie.json. Jak widzisz wyżej kontroler działa i wyświetla skoczków ale jedynie gdy te dane są w kontrolerze a ja nie chce ich trzymac w kontrolerze tylko w oddzielnym pliku. Na pierwszym obrazku widać właśnie te dane. Te same dane są w pliku skoczkowie i chciałbym się dostać z kontrolera do tego pliku. Jak widać na drugim obrazku robię to za pomocą http.get jednak to nie dizała a wyglada na to jaby wszystko było poprawne dlatego pytam czy ktoś widzi gdzieś tam błąd?
Ok, widzę, że da się pobrać zawartość pliku lokalnego getem - tutaj masz ładne przykłady jak to zrobić:
http://stackoverflow.com/questions/16930473/angularjs-factory-http-get-json-file
To co mi się rzuca w oczy to brak slasha przed nazwą pliku w tych przykładach - a u Ciebie jest.
bez slasha też próbowałem i niestety nie działa dalej
A może to wina file:/// . Weź sobie zklonuj Angular JS seed app, tam jest od razu serwerek Node.js i unikniesz ewentualnych problemów związanych z Cross Origin Request
to nie jest wina tego bo wszystko inne działa chciałbym to naprawić u siebie na lokalu
Ale co znaczy, że nie wyświetla? Sprawdzałeś w konsoli przeglądarki jaką masz odpowiedź z serwera?
wyrzuca mi takie cos
czy to znaczy ze to wina chroma?
Czemu ty stronę odpalasz z pliku? Powinieneś to uruchamiać na lokalnym serwerze.
ok na lokalu zrobilem hosty i dalej nie działa :d ale tym razem nie wyrzuca zadnego bledu po prostu nie wyswietla tej tablicy json ale w konsoli jest ta tablica
Czyli masz błąd w kodzie, którego nie zamieściłeś
ok już wszystko działa kontroler wyglada teraz tak
apka
.controller("MojController", ['$scope', '$http', '$filter', function ($scope, $http, $filter) {
$scope.myVar = false;
$scope.toggle = function () {
$scope.myVar = !$scope.myVar;
}
$scope.skoczkowie = [];
$http.get('skoczkowie.json').success(function (data) {
$scope.skoczkowie = data;
console.log(data.skoczkowie);
});
}])