Не могу заставить Cookies работать

0
var app = angular.module('rjtApp',
 ['ngRoute','ngCookies']); 

app.config(['$routeProvider',
 function($routeProvider) {


  $routeProvider.

      when('/', {templateUrl: 'main.html'}).

      when('/About', {templateUrl: 'about.html'}).
      when('/Evo', {templateUrl: 'evo.html'}).
      when('/Evo1', {templateUrl: 'evo1.html'}).
      when('/ContactUs', {templateUrl: 'contactus.html', controller: 'projectCtrl'}).
      when('/NewProject', {templateUrl: 'new.html', controller: 'storeProjectCtrl'}).
      when('/Register', {templateUrl: 'register.html', controller: 'register'}).
      when('/Login', {templateUrl: 'login.html', controller: 'loginCtrl'}).
      when('/UpdateProject/:id', {templateUrl: 'views/edit.html', controller: 'editProjectCtrl'}).
      otherwise({redirectTo: '/'});

Я использую loginCtrl, чтобы проверить с помощью SQL и вернуть переменную True или False.

app.controller( ' loginCtrl ', [' $scope ', ' $http ', ' $location ', ' $cookie ', 

function($scope, $http,$location,$cookieStore)  {   


    $scope.getFormData = function(data) {
        console.log(data.username);//getting data input by user
        console.log(data.password);//getting data input by user
        $http.post('php/login.php', data).success(function(data) {
            console.log(data);


            if (data) {//row inserted

              $scope.insertMessage = "Data inserted";
              $cookies.cookieStore = (data);

            } else {
              // if unsuccessful, bind success message to message
              $scope.insertMessage = "Data incorrect";


            }
            //reset values in form to empty
            console.log($window.sessionStorage.token);
    })  

Iit дает мне эту ошибку:

Ошибка: [$ injector: unpr] http://errors.angularjs.org/1.2.12/ $ инжектор /unpr? P0 = ookieProvider %20% 3C- %20% 24cookie

и как только я удаляю $ cookie, ошибка исчезает.

Я связал скрипт с угловым файлом, а также любую помощь?

  • 0
    в вашем контроллере квалификатор должен совпадать с параметром в вашей функции
  • 0
    я изменил печенье на печенье, все еще не повезло
Показать ещё 2 комментария
Теги:
scope
cookies

3 ответа

0
Лучший ответ

проблема заключалась в файле angular-cookies.js. Он не совместим с версией бета версии 5.2

переключился на предыдущую версию и работал как шарм

0

Я создал jsfiddle здесь, который показывает простой способ put и get печенье.

var app = angular.module('rjtApp',
 ['ngCookies']); 

app.controller( 'loginCtrl', ['$scope' , '$http', '$cookies',
    function($scope, $http, $cookies)  {  
      $cookies.put('myData', 'data'); //use while setting data
            var myCookie = $cookies.get('myData'); //use while getting data
            console.log(myCookie);
    }
]);
  • 0
    Мой точно такой же, но дает мне ту же ошибку
  • 0
    Ошибка: [$ инжектор: unpr] errors.angularjs.org/1.2.12/$injector/…
Показать ещё 5 комментариев
0

Инъекционный объект должен быть $cookies вместо $cookie

app.controller( 'loginCtrl ', ['$scope' , '$http', '$location', '$cookies', //<-- change here
    function($scope, $http, $location, $cookies)  {  

        //other controller code should  be as is.

    }
]);

Кроме того, вы используете неправильный синтаксис для настройки cookie который равен $cookies.cookieStore = (data); , вместо которого вы должны использовать $cookies.get & $cookies.put при получении и настройке данных.

$cookies.set('myData', data); //use while setting data
$cookies.get('myData'); //use while getting data
  • 0
    я сделал это, та же проблема
  • 0
    это должно работать правильно.
Показать ещё 5 комментариев

Ещё вопросы

Сообщество Overcoder
Наверх
Меню