如何设置反馈,当用户回答问题时应自动显示反馈

问题描述 投票:1回答:1

在Google表单中,我想设置反馈,当用户对问题的回答不正确时,反馈会自动显示。我发现一个类是QuizFeedback。但是,当我运行有关QuizFeedback的参考示例时,出现了2个错误。这样的示例代码:

var textItem = form.addTextItem().setTitle('Re-hydrating dried fruit is an example of what?');

var feedback = FormApp.createFeedback()
  .setDisplayText(
      "Good answer, but not quite right.  Please review chapter 4 before next time.")
  .addLink("http://wikipedia.com/osmosis");

textItem.setFeedbackForIncorrect(feedback);

第一个错误是TypeError: Function setDisplayText not found in object FreebirdFeedbackBuilder

第二个错误是Method setFeedbackForIncorrect (FormApp.QuizFeedbackBuilder) not found.

我在参考Google表单时看到另一个示例,函数setDisplayText和方法setFeedbackForIncorrect的使用方式相同。

[Google尚未更新的函数setDisplayText和方法setFeedbackForIncorrect的使用似乎有所变化。

请让我知道如何使用QuizFeedback类设置反馈。

google-apps-script
1个回答
2
投票

答案:

看来Google为这些方法提供的文档不正确!

更多信息:

[The QuizFeedback class]在代码块中列出了错误的方法,这就是为什么您在代码中收到错误的原因。

方法QuizFeedback返回一个FormApp.createFeedback()对象-一个没有QuizFeedbackBuilder方法的对象。这是第一个错误的原因:setDisplayText()

第二个错误TypeError: Function setDisplayText not found in object FreebirdFeedbackBuilder具有相似的起源-Method setFeedbackForIncorrect (FormApp.QuizFeedbackBuilder) not found.类没有名为TextItem的方法。

但是是setFeedbackForIncorrect()类的一种方法,一种特定类型的问题。遗憾的是,这是[[0 [0]]的方法,因此您不能为MultipleChoiceItem的响应设置错误的消息。但是,您可以设置常规反馈,无论问题是否正确,该反馈都会显示。我已经在下面的代码中显示了这一点。但是,在使用MultipleChoiceItem方法添加对象之前,需要先构建TextItem对象。修复:

为了解决此问题,需要重写一些代码:

QuizFeedbackBuilder

我希望这对您有用!

Google文档问题:

我已自由地向Google提交报告以进行文档编辑,以消除这些错误并在其文档中反映出正确的方法。

参考:

.setGeneralFeedback()
  • var form = FormApp.getActiveForm(); var textItem = form.addTextItem().setTitle('Re-hydrating dried fruit is an example of what?'); var feedback = FormApp.createFeedback().setText( "Good answer, but not quite right. Please review chapter 4 before next time.") .addLink("http://wikipedia.com/osmosis"); // the next line is the general feedback textItem.setGeneralFeedback(feedback.build());

© www.soinside.com 2019 - 2024. All rights reserved.