我有一个在中继器中被调用的组件。在调用中,我将几个变量传递给组件。除了一个名为totalSpan ...由于某种原因返回NaN之外,它们都工作正常。这是我正在使用的代码:
家长:
<mx:Repeater id="indPositions" dataProvider="{projectPositions}" startingIndex="0" count="{projectPositions.length}">
<components:block height="28"
id="thisBlock" visible="true" horizontalScrollPolicy="off"
width="{projectWidth}"
oneDay="{Number(oneDay)}"
offSet="{indPositions.currentItem[0]}"
numDays="{indPositions.currentItem[1]}"
position="{indPositions.currentItem[2]}"
sName="{indPositions.currentItem[3]}"
projectName="{projectTitle}"
totalSpan="{Number(Math.round(projectWidth.vl / oneDay))}"
/>
</mx:Repeater>
那里的所有变量都可以正常工作,并且 typeof() 就可以了。
这是子代码:
[Bindable] public var totalSpan:Number;
然后在 init() 函数中执行一个简单的操作:
Alert.show(String(totalSpan));
警报返回“NaN”。
在半相关的注释中,我收到了父母以下几行的警告:
offSet="{indPositions.currentItem[0]}"
numDays="{indPositions.currentItem[1]}"
position="{indPositions.currentItem[2]}"
sName="{indPositions.currentItem[3]}"
显示“使用方括号运算符时数据绑定将无法检测机会。对于数组,请改用 ArrayCollection.getItemAt()。
任何人都可以阐明这些警告错误吗?一个例子将不胜感激。