1

在我们的应用程序中,我们创建的调查需要支持“易读”格式,其中可以将图像附加到任何问题,并与问题文本一起显示。

我看不到直接通过 SurveyJS API 属性执行此操作的方法,即似乎没有任何标准questionImage属性。因此,看起来这需要作为自定义属性来实现。

在此基础上,我需要为所有问题类型添加一个自定义属性,用户可以使用图像填充该属性,就像“图像选择器”问题类型允许您选择图像一样。具体来说,我们要支持的用例是打开一个文件浏览器到用户的本地计算机,并将所选图像编码为data:URI 并存储在此属性中。(支持额外的图像输入方法可能有用,但不是必需的。)

我们有能力为受访者控制这个属性的呈现,所以我不关心如何使用这个属性,只关心如何将它放入编辑器 UI。此外,虽然在编辑界面中看到图像会很好,但这也不是现阶段的基本行为。

从谷歌搜索中,我看到了类似的问题,答案是在相关问题之前在调查中插入一个ImageHTML元素,但这不是我们用例的合适解决方案。首先,它使调查难以管理(使用起来很繁琐,而且在移动/删除问题时也很容易破坏)。其次,这意味着图像在问题之前呈现,而我们需要它作为问题元素的一部分呈现(即在问题编号之后,问题文本之前)。

谁能举例说明如何添加以上述方式运行的新问题属性?

4

1 回答 1

0

您需要将此属性添加到surveyjs 元数据中:

Survey
    .Serializer
    .addProperty("question", {
        name: "image:file",
        category: "general"
    });

这是工作示例 - https://plnkr.co/edit/5wpQMdMq1vxKhWaG

于 2021-02-25T10:11:27.957 回答