在 Angular 8 中使用 put 调用更新本地 JSON 文件的单个属性

2024-02-12

我想更新我放在资产文件夹中的 JSON 文件,所以如果我只更新 JSON 对象的一个​​属性,那么它应该只更新该属性,而不影响任何其他属性值:

让示例代码为:

登录接口.ts

export interface loginModel {
    Email: string;
    Password: string;
}

登录.组件.ts

import { Component, OnInit } from '@angular/core';
import { Observable } from 'rxjs';
import { HttpClient } from '@angular/common/http'
import { loginModel } from './loginModel'

@Component({
  selector: 'app-login',
  templateUrl: './login.component.html',
  styleUrls: ['./login.component.css']
})
export class LoginComponent implements OnInit {


  private _jsonURL = 'assets/Login.json';
  private login: Array<loginModel>;

constructor(
    private http: HttpClient) {
    this.login = new Array<loginModel>();
  }
ngOnInit() {
    this.getLoginData();
  }

  getLoginData() {
    this.http.get<loginModel[]>(this._jsonURL).subscribe(data => {
      this.login = data;
      console.log(this.login);
      return this.login;
    });
  }

UpdateLoginData() {
// How to proceed on this one??
  }
}

登录.component.html

<div *ngFor = "let log of login">
    {{log.Email}} 
    <input [ngModel]="log.Password">
</div>
<button (click)="UpdateLoginData()">Update</button>

这只是一个例子。

因此,如果我在一个地方更改密码并单击更新按钮,那么它应该仅更新该特定电子邮件的密码,并且我不想仅为了更新单个值而用新的 JSON 对象替换整个文件,这可能吗?


您不能仅使用角度框架进行任何文件操作。您需要服务器端实现来实现这一点。如果您不熟悉服务器端编程,您可以尝试使用内存角度数据库 API。

https://www.npmjs.com/package/angular-in-memory-web-api https://www.npmjs.com/package/angular-in-memory-web-api

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Angular 8 中使用 put 调用更新本地 JSON 文件的单个属性 的相关文章

随机推荐