**login.js**
var obj = require("../config/db_properties");
var conn = require("../config/db_connection");
var connection = conn.getConnection();
connection.connect();
var express = require("express");
var router = express.Router();
var myFun = require("../token/token")
router.post("/",(req,res)=>{
var uname = req.body.uname;
var upwd = req.body.upwd;
connection.query("select * from login_details where uname='"+uname+"' and upwd='"+upwd+"'",
(err,recordsArray,fields)=>{
if(recordsArray.length>0){
var token = myFun("HELLO","JKBDSJJL");
obj.token = token;
res.send({"login":"success","token":token});
}else{
res.send({"login":"fail"});
};
});
});
module.exports = router;
**loginservice.ts**
import { Injectable } from '@angular/core';
import { HttpClient } from '@angular/common/http';
@Injectable({
providedIn: 'root'
})
export class LoginService {
constructor(private _http:HttpClient) { }
authentication(obj:any){
return this._http.post("http://localhost:8080/login",obj)
}
}
logincomponent.ts
import { Component, OnInit } from '@angular/core';
import { LoginService } from 'src/app/services/login.service';
import { Router } from "@angular/router";
import { HttpErrorResponse } from '@angular/common/http';
@Component({
selector: 'app-login',
templateUrl: './login.component.html',
styleUrls: ['./login.component.css']
})
export class LoginComponent implements OnInit {
constructor(private _service:LoginService,private _router:Router) { }
ngOnInit() {
}
public login(obj:any):any{
this._service.authentication(obj).subscribe(
(posRes)=>{
if(posRes.login == "success"){
window.localStorage.setItem("login_details",JSON.stringify(posRes));
this._router.navigate(["/dashboard"]);
}
},
(err:HttpErrorResponse)=>{
if(err.error instanceof Error){
console.log("client side error")
}else{
console.log("server side error")
}
}
)
}
}
**login.component.html**
<label style="margin-right:100px">Uname.</label>
<input type="text" [(ngModel)]="uname">
<label style="margin-right:100px">upwd.</label>
<input type="password" [(ngModel)]="upwd">
<br><br>
<button (click)="login({'uname':uname,'upwd':upwd})">login</button>
在这里,我正在创建基于令牌的登录应用程序。我收到此错误 在我运行服务器和角度应用程序之后
src / app / components / login / login.component.ts(21,19)中的错误:错误TS2339:类型“ Object”上不存在属性“ login”。 谁能解决这个错误...?
答案 0 :(得分:0)
您可以尝试这些方式
if(posRes['login'] == "success"){}
答案 1 :(得分:0)
这可能是因为posRes没有对象登录,可能您需要posRes.data.login,不确定如何设置后端
您应该尝试添加这些控制台语句进行检查
<form action='your route'>
<input type='hidden' name='_method' value='PUT'>
//do something.......
</form>