建议:CustomWidget还是调整CSS?Surveyjs with Next.js,Material UI v5(自定义主题)

zpgglvta  于 2023-08-04  发布在  其他
关注(0)|答案(1)|浏览(86)

我希望你能给我一些建议。这是目前的情况:

  • nextjs应用程序与材料ui v5使用自定义主题
  • 此主题在多个应用程序中使用,因此外观和感觉始终相同
  • 我想通过创建者建立调查表,并使用所有可用的功能

调查组件应该看起来像mui元素。我在文档中看到有两种可能的方法:

  • 创建一个CustomWidget,它可以很好地工作,例如:
CustomWidgetCollection.Instance.add({
        name: 'mui-text-field',
        isFit: (question: QuestionTextModel) => question.getType() === 'text',
        render: (question: QuestionTextModel) => {
            return <FieldString question={question} />;
        },
    });

字符串

  • 或调整主题的CSS

我确实尝试了这两种方法--更改CSS和创建自定义小部件--这两种方法似乎都是压倒性的工作量。
我不知道什么是最好的方法。我认为使用来自mui的组件会很好,所以我的表单会尊重对主题的更改。但是这样我就需要在我的CustomWidget中重建很多函数。文本字段是直接的,不是一个问题,但无线电组例如将是一个更大的事情来解决。但另一方面,重新实现mui的CSS也会很麻烦,因为HTML的结构可能不同。(我猜surveyjs和mui组件的构建方式不同)
| 自定义小部件| custom widget |
| --| ------------ |
| surveyjs功能需要重新实现| surveyjs functionality needs to be reimplemented |
| 将花费大量的实现测试时间| would take a lot of implementation testing time |
有没有人有经验或可以给予我他/她的观点?一切都很感激!

cclgggtu

cclgggtu1#

本周发布的SurveyJS Creator v1.9.100有the Theme Editor。你可以try it。它允许可视化地自定义所有SurveyJS css变量。也许你将能够通过使用SurveyJS css变量只获得所需的结果。

相关问题