我正在尝试为我的快速应用程序创建主题,并且正在尝试做一些我不确定是否可能的事情。我需要有关此操作方法或方法的一些专家建议。

这是我的图式...

var colorSchema = new Schema({
    primaryColor: {
        type: String
    },
    secondaryColor: {
        type: String
    }
});
module.exports = mongoose.model('Color', colorSchema);


假设我在创建新架构时已将十六进制颜色输入primaryColor和secondaryColor中。如何像在玉石中一样将color.primaryColor解析为css或手写笔中的值?

最佳答案

确保首先通过Express中的render将数据传递给Jade:

// Default both to white
res.render('template_name', {
  primaryColor: color.primaryColor || '#FFF',
  secondaryColor: color.secondaryColor || '#FFF',
  someOtherVar: 'foo'
});


然后,在您的Jade模板中:

style(type='text/css')
  | .primary-color-bg { background-color: #{primaryColor}; }
  | .secondary-color-bg { background-color: #{secondaryColor}; }


然后,您可以将primary-color-bgsecondary-color-bg类应用于要设置其背景的任何DOM元素。您可以复制colorborder等属性。

09-25 17:33