检测数据存储中记录的更改
detect changes on records in datastore
我在模板视图中嵌入了一个大的svg。所有svg元素的id都对应于sproutcore数据存储中记录的guid。现在我有一个'选定'布尔属性的每条记录。
我想调整记录的相应svg元素,每当'selected'属性在True和False之间切换。视图应该反映对记录所选属性的更改。
我不知道如何设置绑定/观察来做到这一点。如果我用sc为每个记录自己构建svg,我知道如何设置绑定。但我不知道如何构建绑定,当你已经有一个svg。
模型代码:
App.Node = SC.Record.extend(
name : SC.Record.attr(String),
value : SC.Record.attr(String),
selected: SC.Record.attr(Boolean),
}),
查看代码:
App.svg_picture = SC.View.design({
childViews: 'svgpicture'.w(),
layout: { left:12, right:12, top:12, bottom:12},
svgpicture: SC.TemplateView.create({
/**
* settings.
*/
templateName: 'svgtest2',
nodeBorderColorSel: '#FFB60B',
nodeColorSel: 'yellow',
/**
* Event handling code.
*/
....
svg。手把的例子:
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?><svg xmlns="http://www.w3.org/2000/svg" version="1.1" x="manifold" xmlns:xlink="http://www.w3.org/1999/xlink" >
tank_1</text>
<circle cy="25" cx="70" r="20" id="tank_1" strokewidth:5; fill:none; " />
<circle cy="25" cx="120" r="20" id="tank_10" strokewidth:5; fill:none; " />
<circle cy="25" cx="170" r="20" id="tank_11" strokewidth:5; fill:none; " />
... etc...
我自己给对象添加观察者。
node.addObserver('selected', this, 'update_node_selected');
节点是一条记录。现在我手动添加一个观察者在选中的属性上执行'update_node_selected'函数。它获取一个目标参数也就是对象在我的例子中是一个记录
相关文章:
- 更新成员数据模型中的记录列表
- 在页面上记录数据并实现pushstate()的最佳方式
- Firebase:如何从存在特定密钥的数据中检索记录
- 数据中的一条记录使用浮动图时未创建饼图
- Chrome扩展-使用javascript定期运行,并永久记录数据
- 在本地使用浏览器历史记录时刷新页面后数据消失
- 使用 Prepare 语句插入数据不会返回插入的记录
- 单击事件不起作用,当我在 jquery 数据表中显示每页 25 条记录时
- lunr.js添加有关索引记录的数据
- 数据表:禁用第一个下一个上一个最后一个,并在处理时显示/搜索记录
- 基于表单输入值,如何 2 生成选择 4 下拉菜单 w 数据库中的行/记录数据,该数据库将在选择时预填充表单
- 如何为下拉菜单生成选择,其中包含数据库中的行/记录数据,该数据库将在选择时预填充表单
- 隐藏数据表中的记录
- 默认情况下,从数据列表中选择第一条记录
- 使用AngularJS分两步记录数据
- 如何在ext-js网格中将记录数据显示为链接
- 从输入中获取数据,并在提交按钮上单击控制台日志记录数据
- EXTJS 3.4如何在选择更改时获取记录数据视图
- 发送跨域请求以记录数据
- 使用可稍后处理的防油剂存储或记录数据