InputNumber 需要 'ValueExpression' 参数的值

InputNumber requires a value for the 'ValueExpression' parameter

我正在尝试构建一个使用内置组件 'InputNumber' 的组件,如下所示:

Child :

  @typeparam T
  <InputNumber TValue="T" Value="@ValueChild" @onchange="OnValueChildChanged" id="input1" />
   

    @code {
        
        [Parameter]
        public T ValueChild { get; set; }
        [Parameter]
        public EventCallback<T> ValueChildChanged { get; set; }

        public async Task OnValueChildChanged(ChangeEventArgs e)
        {
            ValueChild = (T)e.Value;
            await ValueChildChanged.InvokeAsync(ValueChild);
        }
    }

我这样称呼它:

Parent

<InputNumberPerso T="int?" @bind-ValueChild="@ForumuleModel.FR_TPSMALA"> </InputNumberPerso>

但我收到此错误消息;我做错了什么?

> blazor.webassembly.js:1 crit:
> Microsoft.AspNetCore.Components.WebAssembly.Rendering.WebAssemblyRenderer[100]
>       Unhandled exception rendering component: Microsoft.AspNetCore.Components.Forms.InputNumber`1[System.Nullable`1[System.Int32]]
> requires a value for the 'ValueExpression' parameter. Normally this is
> provided automatically when using 'bind-Value'.

这应该有效:

Child :

@typeparam T

<InputNumber @bind-Value="ValueChild" id="input1" />


@code {
    
    [Parameter]
    public EventCallback<T> ValueChildChanged { get; set; }

    private T _valueChild;

    [Parameter]
    public T ValueChild
    {
        get => _valueChild;

        set
        {
            if (!EqualityComparer<T>.Default.Equals(_valueChild, value))
            {
                _valueChild = value;  
                ValueChildChanged.InvokeAsync(value);
            }

        }
    }