问题描述
我想在名为disponibleRow.js
的单独js中创建TableViewRow
,但是它不起作用。
我找不到错误。
这是错误:
“未定义不是对象(正在评估't.disponibleRow.add')”;
listadoCuponesVC.js
var disponibleRow = Alloy.createController('Rows/disponibleRow', cuponAux).getView();
Ti.API.debug("row: " + disponibleRow);
disponibleRow.addEventListener('click', function(e){
Ti.API.debug('row clicked: ' + e.rowData.value);
Alloy.createController('codigoVC', cuponAux).getView();
});
disponibles.push(disponibleRow);
disponibleRow.js
var fecha = Titanium.UI.createLabel({
text: args.get('date'),
font:{fontSize:12,fontWeight:'light'},
width:'auto',
textAlign:'left',
color: '#72828c',
bottom:2,
left:45,
height:12
});
var puntos = Titanium.UI.createImageView({
image:"/images/puntos_azules.png",
width:16,
height:16,
right:10
});
$.disponibleRow.add(fecha);
$.disponibleRow.add(puntos);
disponibleRow.xml
<Alloy>
<TableViewRow height="65" id="disponibleRow">
</TableViewRow>
</Alloy>
编辑:
现在,我已经解决了该错误,但是Alloy.createController
返回了未定义的对象,我也不知道为什么。
编辑2:
var disponibleRow = Alloy.createController('Rows/disponibleRow', cuponAux).getView();
这行返回undefindet .getView()是问题,但我不知道这是什么问题。
1楼
droid-zilla
0
2016-05-13 23:59:48
创建控制器时,应将arguments对象作为第二个参数传递,否则将其留空。 那么,cuponAux是什么?
带参数的示例:
var disponibleRow = Alloy.createController('Rows/disponibleRow', {arg1:"This is an argument"}).getView();
没有参数的示例:
var disponibleRow = Alloy.createController('Rows/disponibleRow').getView();