让我对表单模板帖子的样式进行一些控制

与此同时,我想到了一种丑陋的解决方法来 a) 隐藏“复选框”答案,b) 在同一行显示非文本区域问题(<question?>: <answer>),以及 c) 修复项目之间的间距。

如果您对 Javascript 有一定的了解,可以根据自己的需要进行调整:

(这将被添加到 app.yml 的 hooks 部分)

hooks:
  after_code:
    - exec:
        # 通常在这里你会找到插件的东西
    - replace:
        filename: /var/www/discourse/app/assets/javascripts/discourse/app/lib/form-template-validation.js
        from: 'return formattedOutput.join("\n\n");'
        to: |
          const formattedOutput2 = mergedData.map((item) => {
            const key = Object.keys(item)[0];
            const value = item[key];
            const type = formTemplate.find(x => x.id == key).type;
            if (type == 'checkbox') return;
            if ((value) && (type != 'textarea')) return `**${labelMap[key]}**: ${value}`;
            if (value) return`\n### ${labelMap[key]}\n${value}\n`;
          });
          return formattedOutput2.join("\n");

2 个赞