起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1533|回复: 4

[结贴] 新手学习Data组件碰到的问题

[复制链接]

1

主题

3

帖子

5

积分

新手上路

Rank: 1

积分
5
QQ
发表于 2016-8-11 08:53:20 | 显示全部楼层 |阅读模式
哪位大哥大姐教教我:
今天照着官网上的教材学Data组件,当运行setRowState方法时老报错:Data is not defined。
然后运行 dw.saveData();方法时也报错:cannot read property ‘saveData’ of underfined
代码如下:
define(function(require){
        var $ = require("jquery");
        var justep = require("$UI/system/lib/justep");
       
        var Model = function(){
                this.callParent();
        };

        Model.prototype.button3Click = function(event){
          //用newdata插入数据
        var dw=this.data1;
        var li_count=dw.count()+1;
        var ls_name='newname'+li_count+''
        var ls_sex='newsex'+li_count+''
        var ls_id=li_count+''
        dw.newData({defaultValues:[{name:ls_name,sex:ls_sex,id:ls_id}]});
        };

        Model.prototype.button4Click = function(event){
      //用add插入数据
        var dw=this.data1;
        var li_count=dw.count()+1;
        var ls_name='addname'+li_count+''
        var ls_sex='addsex'+li_count+''
        var ls_id=li_count+''
        var row=dw.add({name:ls_name,sex:ls_sex,id:ls_id});
       dw.setRowState(row,Data.STATE.NEW);
        };

        Model.prototype.button1Click = function(event){
      var dw=this.data1;
      dw.open();
      dw.refreshData();
        };

        Model.prototype.button2Click = function(event){
    //通过loadData加载数据
    var dw=this.data1;
    var li_count=dw.count()+1;
    var ls_name='loadname'+li_count
    var ls_sex='loadsex'+li_count
    var ls_id=li_count+''
    dw.loadData(
      {rows:[{id:ls_id,name:ls_name,sex:ls_sex}]},true
    );
        };

        Model.prototype.button5Click = function(event){
      var dw=this.date1;
      dw.saveData();
        };

        return Model;
});

发表于 2016-8-11 13:39:09 | 显示全部楼层
获取data组件对象,请使用this.comp('data组件的xid')
然后才能调用组件提供的方法!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

1

主题

3

帖子

5

积分

新手上路

Rank: 1

积分
5
QQ
 楼主| 发表于 2016-8-11 15:08:54 | 显示全部楼层
liangyongfei 发表于 2016-8-11 13:39
获取data组件对象,请使用this.comp('data组件的xid')
然后才能调用组件提供的方法! ...

我用 var dw=this.comp("data1");获取data组件,dw.saveData();语句没有报错了,
但是dw.setRowState(row,Data.STATE.NEW);还是报错Data is not defined。

回复 支持 反对

使用道具 举报

发表于 2016-8-11 17:16:47 | 显示全部楼层
caizhangda 发表于 2016-8-11 15:08
我用 var dw=this.comp("data1");获取data组件,dw.saveData();语句没有报错了,
但是dw.setRowState(row ...

Data 这个变量没有定义嘛
在头部写上var Data = require('$UI/system/components/justep/data/data'); 就可以了!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

1

主题

3

帖子

5

积分

新手上路

Rank: 1

积分
5
QQ
 楼主| 发表于 2016-8-11 17:24:28 | 显示全部楼层
liangyongfei 发表于 2016-8-11 17:16
Data 这个变量没有定义嘛
在头部写上var Data = require('$UI/system/components/justep/data/data'); 就 ...

确实是这样,加上就不报错了,谢谢了!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-9-29 01:31 , Processed in 0.057246 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表