【问题标题】:Setting background color style to an observable and using style binding将背景颜色样式设置为可观察并使用样式绑定
【发布时间】:2015-11-27 14:09:23
【问题描述】:

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

这是我所拥有的:

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

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

我的看法:

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

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

【问题讨论】:

  • 总是喜欢为样式声明一个类,然后使用css binding。你不应该在 viewmodel 中创建不必要的依赖。

标签: javascript css knockout.js


【解决方案1】:
 self.bg_color = ko.observable(data.color || 'red');

然后在 html 中。

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

【讨论】:

  • 在我的情况下 'style:{ 'background-color' : bg_c​​olor }' 工作得很好。谢谢!
【解决方案2】:

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

eg: style:{background:color}

您也可以查看JSFiddle reference

【讨论】:

    猜你喜欢
    • 2018-05-12
    • 1970-01-01
    • 2023-03-29
    • 2015-03-04
    • 2019-06-21
    • 1970-01-01
    • 2019-04-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多