Ответ:
Представляется, что документация, предоставленная Google для этих методов, неверна!
Дополнительная информация:
QuizFeedback
class имеет неправильные методы, перечисленные в блоках кода, поэтому вы получаете ошибки в своем коде.
Метод FormApp.createFeedback()
возвращает объект QuizFeedbackBuilder
- объект, который не имеетsetDisplayText()
метод. Это причина первой ошибки: TypeError: Function setDisplayText not found in object FreebirdFeedbackBuilder
.
Вторая ошибка, Method setFeedbackForIncorrect (FormApp.QuizFeedbackBuilder) not found.
, имеет аналогичное происхождение - класс TextItem
не имеет метода с именем setFeedbackForIncorrect()
.
Это является , однако, методом класса MultipleChoiceItem
, определенного типа элемента вопроса. К сожалению, это только метод MultipleChoiceItem
, и поэтому вы не можете установить неправильное сообщение для TextItem
ответов.
Однако вы можете задать общий отзыв, который показывает независимо от того, был ли вопрос правильным или нет. Это я отобразил в коде ниже. Однако QuizFeedbackBuilder
объекты должны быть построены перед их добавлением с использованием метода .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());
Надеюсь, это вам пригодится!
Проблема с документацией Google:
Я позволил себе отправить отчет в Google для редактирования документации, чтобы устранить эти ошибки. удаляются и правильные методы отражены в их документации.
Ссылки: