Javascript 创建映射到非json模型的自定义ng模型指令
我想创建AngularJS指令,以便能够在不创建自定义json映射的情况下操作RDF图 关于RDF数据结构的一些基本信息 RDF图是一组三元组Setsubject、predicate和object。 因此,RDF图可以有多个主题节点 有点图是我们指向给定主题的图。 所以它是一个点主体,图中点主体是图的主体。 描述2人的RDF图示例:Javascript 创建映射到非json模型的自定义ng模型指令,javascript,angularjs,angularjs-directive,Javascript,Angularjs,Angularjs Directive,我想创建AngularJS指令,以便能够在不创建自定义json映射的情况下操作RDF图 关于RDF数据结构的一些基本信息 RDF图是一组三元组Setsubject、predicate和object。 因此,RDF图可以有多个主题节点 有点图是我们指向给定主题的图。 所以它是一个点主体,图中点主体是图的主体。 描述2人的RDF图示例: Graph G1 = (Sebastien,familyName,Lorber) (Sebastien,phoneNumber,046456654) (Sebas
Graph G1 =
(Sebastien,familyName,Lorber)
(Sebastien,phoneNumber,046456654)
(Sebastien,email,seb@gmail.com)
(Henry,familyName,Story)
(Henry,phoneNumber,046456654)
(Henry,email,henry@gmail.com)
因此,我可以创建指向此图的指针:
点边图PG=Sebastien,G1
这就像是在一个包含两个节点的图的节点Sebastien上:Henry和Sebastien
回到角度
我想做的是能够在我的视图中直接映射由库处理的这个图形数据
在伪代码中,它应该有点像这样:
<div ng-model="PG">
<span ng-model="PG.pointedSubject"/>
<span rdf-predicate="familyName"></span>
<input rdf-predicate="phoneNumber"/>
<input rdf-predicate="email"/>
</div>
<div style="clear:both;">
<h2>Mode edition:</h2>
<div style="clear:both;">
Name: <input ng-model="personPG" rdf-predicate-binding="foaf:name"></input><br/>
Given name: <input ng-model="personPG" rdf-predicate-binding="foaf:givenName"></input><br/>
Family name: <input ng-model="personPG" rdf-predicate-binding="foaf:familyName"></input><br/>
Img: <input ng-model="personPG" rdf-predicate-binding="foaf:img"></input><br/>
Nick: <input ng-model="personPG" rdf-predicate-binding="foaf:nick"></input><br/>
Mbox: <input ng-model="personPG" rdf-predicate-binding="foaf:mbox"></input><br/>
Homepage: <input ng-model="personPG" rdf-predicate-binding="foaf:homepage"></input><br/>
</div>
</div>
在这个图形对象上使用Angular进行双向绑定可能就足够了
有人能告诉我实现这一目标的最佳方法吗
性能注意事项
如果我表示一个人的模型不是JSON对象,而是一个指向图,如果我在这个指向图上放一块手表,它会减慢脏检查机制还是其他什么?最后我找到了一个解决方案 可以这样使用:
<div ng-model="PG">
<span ng-model="PG.pointedSubject"/>
<span rdf-predicate="familyName"></span>
<input rdf-predicate="phoneNumber"/>
<input rdf-predicate="email"/>
</div>
<div style="clear:both;">
<h2>Mode edition:</h2>
<div style="clear:both;">
Name: <input ng-model="personPG" rdf-predicate-binding="foaf:name"></input><br/>
Given name: <input ng-model="personPG" rdf-predicate-binding="foaf:givenName"></input><br/>
Family name: <input ng-model="personPG" rdf-predicate-binding="foaf:familyName"></input><br/>
Img: <input ng-model="personPG" rdf-predicate-binding="foaf:img"></input><br/>
Nick: <input ng-model="personPG" rdf-predicate-binding="foaf:nick"></input><br/>
Mbox: <input ng-model="personPG" rdf-predicate-binding="foaf:mbox"></input><br/>
Homepage: <input ng-model="personPG" rdf-predicate-binding="foaf:homepage"></input><br/>
</div>
</div>
然而,我不确定这是一个理想的解决方案,我想知道它创造了多少手表。顺便说一句,PointedGraph可能是一个需要观察的复杂对象RDF图形在javascript中是如何表示的?@grufbunny这是一个使用的图形如果它是一个大型图形,那么我想象在它上面放置一个手表会大大降低速度,然而,rdfstore.js的文档显示它也有一个事件api,因此,您可以让它告诉您何时以及更新哪些三元组。