About liangyongfei

该作者尚未填入任何详情
So far liangyongfei has created 485 blog entries.

调用history.back() 返回上一个页面的时候想传递参数

调用history.back() 会触发这个页面的onInActive事件, 1.或者跳转到这个页面的时候, http://docs.wex5.com/wex5-ui-question-list-2048/ 传递一个自定义js方法, history.back  会触发当前页面的 onInActive 事件!这个事件中调用前边传过来的方法,这个方法刷新data数据即可!   2.可以在在这个事件中通过派发事件,调用返回的上一个页面中的代码!并给他传递参数! 派发事件可以参考:http://docs.wex5.com/wex5-ui-question-list-2034/

在win8或者win10操作系统studio中新建.w向导或其他的编辑窗口显示不全

(1) 确认是否把操作系统的字体调整为非100%了 (2) 把studio\dropins\studio-app2\plugins\plugin\lib\cef1\chromium.jar这个jar包复制到studio\dropins\studio-app2\plugins\plugin\lib下,重启studio (3)设计器,设置style样式的时候,页面显示不完整,解决方法: 修改源文件/UI2/system/components/designerCommon/src/com/justep/studio/ui/editors/stylepage/StyleDialog.java @Override protected Point getInitialSize() { return new Point(800, 600); } 另外别忘了引入org.eclipse.swt.graphics.Point; 然后右键UI2-源码编译

list组件中绑定数据的格式!

原因:经常有开发提到,list显示的数据都是同一行的数据!这种问题往往是bind-ref写成了 data.val('字段'); 这是错误的写法! 解决办法: list 组件中的可视组件bind相关属性绑定data字段的格式应该写成:val('字段') 或 $object.val('字段') 注:val('字段') 的全写是$object.val('字段') ,表示list循环显示时,每一行数据的当前行值!($object可以省略) data.val('字段')表示选中行的当前行值!默认是第一行!

baasServer 的action中自定义sql语句查下的实现方法

1.参考/Baas/justep/demo.service.m 关于 queryUser 的定义 ,在sql属性中定义sql语句,可以是多表关联, 注意:action 配置的实现部分是 :action:common/CRUD/sqlQuery  (和其他默认配置action:common/CRUD/query 是有区别的) 如果有设置过滤条件,以及排序,可以参考:http://docs.wex5.com/wex5-server-question-list-2006/ 前端调用的代码参考:UI2/demo/baas/complexData/index.w   2.在java代码中自定义sql语句实现:/Baas/takeoutAdmin/Statistics.java,这个时候过滤条件等都是通过传递参数实现的!前端调用的代码参考:/UI2/demo/takeoutAdmin/statistics.js

派发事件的用法

原因:在shell跳转的页面中,想在一个页面中调用其他页面中的js方法,比如添加到购物车的操作,这个时候,可以使用派发事件的方式解决!实质上就是在当前页面中调用其他页面的js代码! 解决方法: 参考外卖案例的写法!在/UI2/demo/taobao/main.js 中,onload事件中进行添加事件 // 添加事件 Model.prototype.modelLoad = function(event) { justep.Shell.on("onRestoreContent", this.onRestoreContent, this); justep.Shell.on("onShoppingContent", this.onShoppingContent, this); justep.Shell.on("onHomeContent", this.onHomeContent, this); }; onUnLoad事件中 卸载事件 // 卸载事件 Model.prototype.modelUnLoad = function(event) { justep.Shell.off("onRestoreContent", this.onRestoreContent); justep.Shell.off("onShoppingContent", this.onShoppingContent); justep.Shell.off("onHomeContent", [...]

json数据如何加载到data组件中

1.使用loadData方法!要求json的数据格式必须符合规定的要求!有两种数据格式,分别是 (1)table 类型的json格式数据,如:http://doc.wex5.com/?p=4932    ,这种格式的数据主要是和后台baasServer进行数据交互!简单而完美实现增删改查的操作! 自定义数据交互可以参考/UI2/demo/acc_data/list.w data组件 接管onCustomRefresh 和 onCustomSave事件 实现 (2)简单类型的json格式数据,就如同平台案例仿途牛中定义的那样:/UI2/demo/tuniu/json/cityData.json   是一个数组类型的json结构数据,这种数据往往只是为了页面显示!如果想实现增删改等操作!比较麻烦,后台也需要自己实现! 2.使用newData方法!用这种方法添加数据往往是因为后台传过来的json数据结构不符合我们规定的格式!就需要通过在js代码中处理这个json对象,获取每个字段的值,自己组织成符合格式要求,最后以如下的格式添加进去 var data = this.comp('mainData'); var options = { defaultValues : [ {sName:'a1',sCode:'b1'}, {sName:'a2',sCode:'b2'} ] }; data.newData(options); [...]

极光插件升级

1.去https://github.com/jpush/jpush-phonegap-plugin下载最新版的cordova插件 2.修改文件夹的名字为插件的id即:cn.jpush.phonegap.JPushPlugin 3.将原来插件中的plugin-ex.xml文件拷贝到新版的插件中去 4.修改新版插件的plugin.xml文件,①首先在xml中找到<preference name="API_KEY" />这句话,把它删除,因为我们配置参数的机制稍有不同, ②然后修改参数的名字:在iOS平台的配置下找到 <config-file target="*PushConfig.plist" parent="APP_KEY"> <string>$API_KEY</string> </config-file> 然后将其修改为 <config-file target="*PushConfig.plist" parent="APP_KEY"> <string>$jpush_appkey</string> </config-file> 在Android平台的配置中找到: <meta-data android:name="JPUSH_APPKEY" android:value="$API_KEY"/> 将$API_KEY改为:<meta-data android:name="JPUSH_APPKEY" android:value="$jpush_appkey"/> ③然后找到: <js-module src="www/JPushPlugin.js" name="JPushPlugin"> <clobbers target="jPushPlugin"/> </js-module> 把它修改为: <js-module src="www/JPushPlugin.js" [...]