错误 TS2554:预期有4个参数,但得到的是0。

我如何解决这个问题?

下面的代码TS。

这应该是简单的,但我是新来的。

是一个简单的页面,计算学生的平均水平

import { Grade } from './calculator.model';
import { Component, OnInit } from '@angular/core';

@Component({
  selector: 'app-calculator',
  templateUrl: './calculator.component.html',
  styleUrls: ['./calculator.component.css'],
})
export class CalculatorComponent implements OnInit {
  grade: Grade = {
    name: '',
    grade1: null,
    grade2: null,
    grade3: null,
  };

  constructor() {}

  ngOnInit(): void {}

  calcGrade(
    grade1: number,
    grade2: number,
    grade3: number,
    account: number
  ): void {
    account = (grade1 * 0.25 + grade2 * 0.25 + grade3 * 0.5) / 3;

    if (grade1 && grade2 < 6.2) {
      console.log('aluno repovado');
    }
  }
}

我试着把参数放在构造函数中,但不工作。

下面的HTML代码

在html中,我只是通过在组件中创建的函数。

<div class="container">
  <div class="header">
    Olá Professor
  </div>
  <form class="form" action="submit">
    <input
      [(ngModel)]="grade.name"
      type="text"
      class="inputName"
      placeholder="Nome do Aluno:"
    />
    <input
      [(ngModel)]="grade.grade1"
      type="number"
      class="inputGrade"
      placeholder="Nota da prova 1:"
    />
    <input
      [(ngModel)]="grade.grade2"
      type="number"
      class="inputGrade"
      placeholder="Nota da prova 2:"
    />
    <input
      [(ngModel)]="grade.grade3"
      type="number"
      class="inputGrade"
      placeholder="Nota da prova 3:"
    />

    <button (click)="calcGrade()" class="button">Calcular</button>
  </form>
</div>

解决方案:

你的calcGrade函数需要4个参数,但当你在HTML模板中调用它时,你没有提供任何参数。

取而代之的是,从函数签名中删除参数,并从函数内部创建的ngModal对象(grade)中访问它们。

calcGrade() {
   account = (grade.grade1 * 0.25 + grade.grade2 * 0.25 + grade.grade3 * 0.5) / 3;

   if (grade.grade1 && grade.grade2 < 6.2) {
     console.log('aluno repovado');
   }

} 

给TA打赏
共{{data.count}}人
人已打赏
未分类

Django用户在登录时丢失了组(但没有权限)。

2022-9-8 12:17:40

未分类

如何使用dplyr mutate从输入一列到返回一个列表的函数中创建新的列?

2022-9-8 12:17:42

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索