WeX5基础

最近在研究微信app开发,使用的是WeX5,在这里把一些基础知识点记录下来,忘记了可以翻阅查看。

一:开发后端服务

1.建立数据源:窗口--首选项--studio配置--数据源--增加--数据源类型选择MySQL--数据库名称即数据库名称--驱动类别:默认com.mysql.jdbc.Driver

--用户名:root--密码:x5--服务器IP:127.0.0.1--数据库名称:比如acc--在Baas文件夹下选择db.config.m打开 acc前勾选上--保存数据源即建立完成。

2.建立数据库表

3.新建服务:选择Baas右击选择新建--文件夹qd--右击qd选择新建服务acc--生成acc.service.m配置文件

4.新建数据表动作

5.模型编译 :选择qd文件夹右击--模型编译

6.启动tomcat

二:重用组件的作用

1.scrollview组件提供分页加载

2.list--class--x-cards作用是集合中行与行之间加一条线

3.button--class--btn-link按钮透明  btn-only-icon只显示图标,不显示内容

4.output标签绑定样式 在bind中bind-css 写表达式,表达式是一个json格式

例如:{"acc-in":val("fType") =='收入',"acc-out":val("fType") =='支出'}

其中acc-in和acc-out是在css中写的类样式,val("fType")是字段名,后面是条件

5.data组件的autoLoad:true表示一打开页面就加载数据。

6.labelSelect标签是下拉选择标签,包含两个属性label 取数据表中的描述即汉字    select 取值 在bind-options选择取哪个表   bind-optionsValue中设置取值

7.windowDialog组件设置src选中要打开的页面,作用从一个页面中打开另一个页面。

windowDialog组件设置mapping,作用是弹出页面返回数据到列表页 添加映射关系 根据唯一主键id鉴别

8.autoLoad属性为true时,是进入页面就加载数据,false则是不自动加载。 

9.dialogopen 代码模板 alt+/     等价于下面代码,意思是获取组件xid为windowDialog1的js对象,传递的操作是new 新增  传递的参数是json格式

this.comp("windowDialog1").open({    //this.comp("xid") 获取组件js对象的方法
        "data" : {
            "operate" : "new"
        }
    })

10.点击详细页在 model中接收参数  事件onParamsReceive newDate  代码模板 alt+/

11.获取当前行的对象方法:this.comp("accountData").getCurrentRow(),关闭窗口的方法:this.comp("window").close();

12.Data组件directDelete 设置成true 直接删除 就可以在删除之后不用在写保存的方法。

13.一般在增加,删除,修改之后都要执行保存才能在数据库中同时实现增删改,即 this.comp("accountData").saveData();

14.增加的数据一般按照时间或者id倒序排列,Data组件accountDataBeforeNew事件

Model.prototype.accountDataBeforeNew = function(event){
        event.option.index=0;//保证每次增加的数据放在列表最上面
    };

15.windowContainer组件是把一个W文件嵌入到另一个w文件中去,在src中指定 ./list.w 意思是当前目录下的list.w文件

16.如果需要对数据进行过滤显示,可以在数据组件的onBeforeRefresh事件中调用数据组件的 setFilter 方法:

     this.comp("baasData1").setFilter("f1", "id= 1");

17.this.comp("baasData1").getCount(parent)==0 判断指定数据表中是否有值。

18.页面中通过url+?传递参数在另一个页面js中获取参数的方式。

     ”$UI/hfrc_app/searchJob/jobInfoDetail.w?companyId=” + companyId + "&positionId=" + positionId 

      url:后面加?传递参数 取值的方式:

    companyId = this.getContext().getRequestParameter("companyId");//取url后面传递数据的方式

    positionId= this.getContext().getRequestParameter("positionId");

原文地址:https://www.cnblogs.com/weiyi1314/p/6422499.html