你在这里。看看这个问题与其他知识怎样相连。
选择节点前往页面 · 展开后可留在地图中阅读
一个问题
src、bind 和 propBind 有什么区别?
读取资源、写回输入与更新属性,是不同的连接。
以任务标题为例:一个地方只显示标题,另一个地方允许编辑标题。它们都与同一个资源有关,但所需操作不同。
| 字段 | 连接职责 | 读例子时应问什么 |
|---|---|---|
src | 只读数据连接 | 这个节点怎样解释读到的资源? |
bind | 输入的读写连接 | 用户改值后写回哪里? |
propBind | 服务端把资源值连接到特定属性 | 哪个属性随资源改变? |
把三个连接放进同一个任务应用,就更容易分清:
- 任务列表通过
src读取一组任务,显示标题和状态。 - 标题输入框通过
bind读取标题,编辑后向相应资源写回新标题。 - 列表还有“按什么排序”这个属性,也就是界面的一项设置。
propBind可以让这个属性跟随另一个资源中保存的排序偏好。
例如教学映射 {"sort.field":"/example/preferences/task-sort"} 表示:从这个地址取值,把它交给 sort.field 属性。资源值若从 title 改成 status,运行时会把新的属性值传给渲染器。这里更新的是列表设置,不是把某个任务标题改写了。应用仍需提供示例资源与支持这些字段的节点。
这是节点合同中的职责区分,不是承诺所有节点、所有渲染端都以相同方式支持三种连接。比如一个列表如何解释 src,与一个图片节点如何读取媒体资源,并非同一逻辑。
绑定也不会绕过权限:能显示一个输入框,不代表当前调用者有权写入背后的资源。
继续阅读
技术文档:查阅完整说明。