문제

유형의 변수가 있습니다. Dynamic 그리고 나는 그 분야 중 하나를 확실히 알고 있습니다. 그것을 부르겠습니다. a, 실제로는 배열입니다.하지만 내가 글을 쓸 때

var d : Dynamic = getDynamic();
for (t in d.a) {
}

두 번째 줄에서 컴파일 오류가 발생합니다.

동적 값에서는 반복할 수 없습니다. Iterator 또는 Iterable을 지정하십시오.

이것을 어떻게 컴파일 가능하게 만들 수 있나요?

도움이 되었습니까?

해결책

Haxe는 반복할 수 없습니다. Dynamic 변수(컴파일러가 말하는 대로).

여러 가지 방법으로 작동하게 할 수 있는데, 아마도 이 방법이 가장 쉬울 것입니다(상황에 따라 다름).

var d : {a:Array<Dynamic>} = getDynamic();
for (t in d.a) { ... }

당신은 또한 변경할 수 있습니다 Dynamic 배열 내용의 유형입니다.

다른 팁

동일한 작업을 수행하는 또 다른 방법은 추가 임시 변수와 명시적 입력을 사용하는 것입니다.

var d = getDynamic();
var a: Array<Dynamic> = d.a;
for (t in a) { ... }
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top