有没有被接受或出现的JSON格式和字段定义格式?
我最近有理由退出几个不相关的框架,从头开始。 在一种情况下, Javascript驱动的表单UI,另一种情况对于Java Swing也是如此 。 我意识到我可以制作一个简单的JSON对象,将字段中的UI元素定义为事件绑定。
在我远离兔子洞之前,我开始怀疑: 有没有人看到过这种标准 ?
下面是我正在踢的东西的一种风味。 我正在使用JSON对象来定义一个Swing UI布局以及(单独的)面向JavaScript生成的Web表单的Web。
这两个变量源于我的建立,最初是一个简单的网格控制,我需要的领域之前,我认为这也是一个好的形式。 当然,它可以被折叠成一个JSON结构。
var app = {
forms: form1,
bindings: [],
layout:[{
width: 400,
height: 300,
bgcolor: '#fefefe',
color: 'black'
}]
}
var form1 = {
"formfield1": {
itype: "text",
tag: "input",
iclass: "frminput",
defaultval: "text input",
label: "Text Value 1",
validation: '/[a-z][A-Z][0-9]/',
error: "No special characters allowed - only numbers or letters for this input",
bindings: [{
ievent: 'click',
fx: function(){
validateTest(this);
}
},{
ievent: 'blur',
fx: function(){
blurTest(this);
}
}]
},
"formfield2": {
itype: "select",
tag: "select",
iclass: "frminput",
defaultval: "apples",
label: "Test Select",
options: [["apples","Apples"], ["oranges","Oranges"], ["peaches","Peaches"]]
},
"formfield3": {
itype: "date",
tag: "input",
iclass: "date",
label: "Test Date",
defaultval: new Date()
},
"formfield4": {
itype: "text",
tag: "input",
iclass: "frminput",
label: "Text field 2",
defaultval: "text input other"
},
"objectproperty": {
itype: "button",
tag: "button",
iclass: "btn btn-small",
label: "test magnitude button",
defaultval: "",
bindings: [{
ievent: 'click',
fx: function(){
buttonAction(this);
}
}]
}
};
我最想找到的是其他人已经对此进行了更多的思考。
这篇文章的第二个最好的结果是对最佳做法的一些建议。
我们的目标是拥有一个相当不可知的实现,可以在未来将其移植到其他平台,或者提供对不同系统的轻松集成。
更新 :在这个问题上的良好讨论:标准的JSON API响应格式? 关于各种基于JSON的对象和实现的新兴标准和建议标准。 然而,大部分的重点都放在了AJAX的使用上。 这个问题仍然是一个很好的交叉参考。
Angular Formly就是这样一种努力。
我正在继续研究这个问题,但至少发现一个答案。
GNome建议Clutterscript作为使用JSON定义用户界面的解决方案。 https://developer.gnome.org/clutter-cookbook/stable/script-ui.html
我会添加任何类似的东西,我发现这个答案。 clutterscript解决方案并不是最佳的,因为它具有一些框架特定的项目和JSON表示法中的标记。 我的观点是,JSON表示法应该从实现者那里抽象出来。 实现者应该决定如何处理JSON对象中包含的UI描述。
链接地址: http://www.djcxy.com/p/48069.html上一篇: Is there an accepted or emerging JSON form and field definition format?