将背景颜色样式设置为可观察并使用样式绑定

时间:2015-09-02 07:19:42

标签: javascript css knockout.js

我正在尝试使用将在视图中调用的特定背景颜色设置一个observable。我创建了我的observable但现在当我将它应用于样式绑定时 - 当我渲染页面时没有任何反应。

这就是我所拥有的:

self.color = ko.observable(data.color || '');

我已在我的数据中设置:color:'background-color: #E91E63'

我的观点:

<div class="info" data-bind="style: color"></div>

当我运行页面时,div仍然是白色的并且没有改变颜色 - 不知道我哪里可能出错。

2 个答案:

答案 0 :(得分:7)

 self.bg_color = ko.observable(data.color || 'red');

然后在html。

 <div class="info" data-bind="style:{ 'background-color' :  $data.bg_color() }"></div>

答案 1 :(得分:2)

样式绑定类似于html中的样式标记。你必须提供需要更新其值的属性。

eg: style:{background:color}

您也可以查看JSFiddle reference