Smartclient 细节 --小总结

 Smartclient 细节 --小总结
1:DataSource 細節 
isc.DataSource.create({
		ID:"supplyCategory",
		dataFormat:"json",
		recordXPath:"data",
		fields:[
			{name:"categoryName",primaryKey:true},
			{foreignKey:"supplyCategory.categoryName", 
	         hidden:true,
	         name:"parentID",
	         required:true,
	         rootValue:"root", 
	         type:"text"
			}
		],
		operationBindings:[
	    	{operationType:"fetch", dataURL:"demoApp/findTreeAll.action"},
{operationType:"remove", dataURL:"demoApp/deleteInfo.action" }		]
});

别看是那么简单的一段代码,真的是花费不少时间一步步验证过来的,dataFormat 有两种格式 一个是XML 一个是Json  recordXpath对应着服务器响应的路径,也就是后台传来对象的名字,如果dataFormat:”json” ,根据demoApp/findTreeAll.action  执行函数 ,函数返回值为map
(map.put(“data”,list))则对应前台代码recordXPath:”data” 或者 datasource 换成其子类 resetdatasource 就不用配置recordXPath了,
当执行delete操作时,执行对应dataURL 函数应返回删除记录的ID,(map.put(“itemID”,itemID)注意:key一定是itemID,不能写成别的字符串,否则后果是惨重的 呜呜呜 我就是因为写成了 map.put(“data”,itemID)前台没有报错,后台执行了删除操作,但是前台就是不刷新!导致前后台数据不一致!直观现象就是删除后不会自动刷新,这个问题差点把人折磨死!血的教训呢)
俺觉得 做研发和做开发的区别:研发是自己造问题自己解决,开发则可以在前人的基础上,找到问题解决的方法。

2:img 訪問路徑

<SCRIPT>var isomorphicDir="isomorphic/";</SCRIPT> 
 
isc.Page.setAppImgDir(isc.Page.getIsomorphicDocsDir()+"exampleImages/"); //设置img文件路径在exampleImages文件夾下




你可能感兴趣的:(json,xml,list,服务器,delete)