Meteor 显示自动表单方法调用引发的错误消息的最佳方式是什么

Meteor 显示自动表单方法调用引发的错误消息的最佳方式是什么,meteor,Meteor,我有一个这样的快速表格: {{>quickForm schema=competitorSchema id=“newCompetitorForm”type=“method”buttonContent=“Save Competitor”meteormethod=“insertCompetitor”tid=锦标赛。_id} 这是一个模式弹出窗口 现在,在方法代码中,我有一个缺陷,没有在mongo insert操作中指定一个必需字段,因此发生了以下情况: 客户端验证通过(因为我已填充表单中的所有必填字段

我有一个这样的快速表格:

{{>quickForm schema=competitorSchema id=“newCompetitorForm”type=“method”buttonContent=“Save Competitor”meteormethod=“insertCompetitor”tid=锦标赛。_id}

这是一个模式弹出窗口

现在,在方法代码中,我有一个缺陷,没有在mongo insert操作中指定一个必需字段,因此发生了以下情况:

  • 客户端验证通过(因为我已填充表单中的所有必填字段)
  • 当实际插入发生时,collection2抛出正确的错误,称字段X丢失
  • 这是扔给我的,我在我的onError:auto form hook中捕捉到了这一点,如下所示:

    onError: function(operation, error, template) {
        if(error){
            alert(error);
        }
    }
    
    这可能会导致任何一般性错误-顺便说一句,任何原因

    警报不是我想在这里使用的。。。因为它不是很好。Collection2抛出“Error:X是必需的”,但我并不想解析出字符串字段名,因为试图将其与表单键匹配有点脆弱,因为看起来X实际上是标签

    我可以想出一系列的解决办法,比如填充一个特殊的div或弹出一个modal等,但我真正想要的是让autoform用一个通用的表单级验证错误(不是一个特定的键)为我处理这个问题

    有人知道自动表单中是否有一种很好的方法可以向用户显示表单级别(而不是特定于字段的错误)?我在文档中没有看到这一点


    我知道如何对特定字段使用addInvalidKeys等,但我想做的是使用类似addInvalidKeys的东西,不带任何键,这样它会显示表单级错误消息等。

    您可以从方法调用返回函数返回您想要的任何内容,这样您就可以将人类可读的消息作为字符串或对象返回

    如果警报对您不起作用,您可以使用模态来发布一条好消息

    它实际上没有太多的代码。 当出现错误时,可以填充会话变量并添加某种类型的banner div

    如果需要验证,则在自动表单中使用SimpleSchema,它将自动工作,但这只会验证输入是否与模式匹配,而不会验证后端插入错误等。

    这本书“发现流星”中有一个关于显示瞬时错误MSG(它们会出现几秒钟)的漂亮部分。看看你是否能读西班牙语、韩语、波兰语、意大利语、俄语、葡萄牙语或西班牙语中文, 可从以下位置免费获取:。在不同的完成阶段,还有许多其他的翻译,其中一些非常接近100%——上面列出的那些是100%完成的。昨晚我刚完成了西班牙语的那一个。