NodeJS 我怎样才能使我点击的产品被删除?

fkaflof6  于 2022-12-18  发布在  Node.js
关注(0)|答案(1)|浏览(126)

我需要一些帮助这个产品被删除,不能完全搞清楚这一点。

我知道在后端要做什么,我需要一些关于Angular的帮助,以使此按钮仅适用于已单击的产品
谢谢
这是我打算如何在后端服务上删除它:

async function deleteProduct(_id){
  return Product.findByIdAndDelete(_id)
}

控制器上没有任何内容:

productController.get(`/profile/delete`, async(req,res) => {

})

这是Angular 分量:

import { Component, OnInit } from '@angular/core';
import { IProduct } from 'src/app/interfaces/products';
import { IUser } from 'src/app/interfaces/user';
import { ProfileService } from './profile.service';

@Component({
  selector: 'app-profile',
  templateUrl: './profile.component.html',
  styleUrls: ['./profile.component.css']
})
export class ProfileComponent implements OnInit {
  user: IUser|undefined
  products: IProduct[] | any
  isEmpty : boolean = false
  constructor(private profileService: ProfileService){
  }

  ngOnInit(): void {
    this.user = undefined
    this.products = undefined
    this.profileService.getUserDetails().subscribe({
      next: (user) => {
        this.user = user

        this.products = user.products

        if(this.products.length == 0){
          this.isEmpty = true
        }
        
      }
    })
  }
  deleteProduct(){}
  
}


正如你所看到的,它的大部分是空的,因为我不想t have any ideas. I don t加载页面在详细视图或任何东西。我想有这个按钮在这个页面上工作

unguejic

unguejic1#

我假设模板中有一个ngFor(因为在图片中有多个产品),并且productproducts数组中的一个元素,如果是这样,那么就差不多了,只需将id参数传递给deleteProduct方法:

deleteProduct(id: number)
{
  // call the delete method
}

不要忘记从products阵列中删除此产品(或从后端重新加载阵列)。

相关问题