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, ошибка исчезает.
Я связал скрипт с угловым файлом, а также любую помощь?
проблема заключалась в файле angular-cookies.js. Он не совместим с версией бета версии 5.2
переключился на предыдущую версию и работал как шарм
Я создал 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);
}
]);
Инъекционный объект должен быть $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