项目整体说明
appweb及esp页面说明
- 后端使用appweb嵌入式web,使用c语言开发,由李云深负责。webapp服务器文档
- esp页面为 appweb支持的开发框架的一部分,文档请参考:esp框架文档,本项目中你可以简单的把esp作为 html页面来编辑。esp页面可以理解为 html页面中添加了部分C语言代码,类似于Php, jsp,asp.net等服务端动态页面技术。
页面实现细节
- 主体页面为
index.esp
,主要职能是页面的布局(使用jquery easyui layout),消息OCX响应事件处理。 - 首页为
mainPage.html
,主要功能是首页Ocx播放,处理消息控件发送的事件,显示图片,及表格数据等。处理数据及显示的逻辑,使用了knockoutjs框架,具体使用方法请参考: knockoutjs文档 - 所有的js文件放在
scripts
目录下。 - 国际化使用
jquery i18n properties
来实现,请参数i18n
目录下的说明及s2相机客户端交接项目中的国际化方案文档。 - 菜单数据在 i18n目录下,已经初步国际化,请参考:
menu_en.json
和menu_zh_CN.json
文件,菜单展示相关逻辑在mainPage.js
文件中。 - 页面上大量使用了
jquery easyui
组件,具体使用方法自行查看网络上的相关文档。 - 页面参数验证使用的是
jquery validate
组件,具体方法自行查看文档,或参考之前的页面。
修改页面的步骤
- 确定要修改的页面,要修改或添加的参数。与
李云深
确定获取参数的类别的名称及成员参数是否改变(一般李云深会发一个xml文件,里面定义的是类别名称与成员参数的映射关系,具体格式请求李云深)。 - 根据该文档说明,结合
scripts\utilities.js
中获取参数的注释说明,参考之前的页面代码照着写就行。 - 页面大部分逻辑已经封装成函数,需要处理的一般是参数验证(使用 jquery validate组件),及UI展示的处理,获取,保存参数等方法直接调用现成的。
修改前注意事项
为了防止出现重复代码,各页面实现不一致等问题,修改前请检查以下各条规则是否成立
- utilities.js文件中封装了很多通用方法,首先看一下是否有需要的方法,尽量重用之前的。
- 一些功能的使用使用了对应的组件(参考
页面实现细节
),尽量使用原有方案,保证各个页面的统一。
可能出现的兼容性问题
该项目需要兼容IE8,使用console
对象打印日志时要注意,IE8,IE9不打开开发者工具
是没有console对象的,直接使用会报错。解决方法如下:
- 引入console-polyfill.js
- 使用前先判断console对象是否存在,参考 utilities.js中打印日志的方法。