0
빠른 곧 나는 다음 한 문제 : 나는 엠버의 구성 요소 내에서 두 가지 작업 다음 한Ember - 동작 내에서 결과가 정의되고 상위 동작에 로그인 된 동일한 동작의 반환 값이 정의되지 않았습니까? 왜?
:
createData: function(user) {
let collection = [];
for (let i = 0; i < user.posts.length; i++) {
let data = this.send('createSingleData',user.posts[i], user, 'post');
console.log(data);
collection.push(data);
}
return collection;
},
createSingleData: function(data, user, type) {
let entitySkeleton = {
name: data.place.name,
belongsTo: user.id,
position: {
data.place.location.longitude,
data.place.location.latitude
}
};
console.log(entitySkeleton);
return entitySkeleton;
}
첫 번째 로그 - createSingleData 내에서, 바로 로그 값을 반환하기 전에 일 - entitySkeleton 등을 기록 예상대로 콘솔에 개체가 있습니다.
그러나 createData 내 console.log (data)는 'undefined'를 콘솔에 씁니다.
비동기 적 성향의 측면이 있습니까? 존경하지 않았습니까?
P.S .: 또한 createSingleData 내에 모든 매개 변수를 기록했지만 모두 올바르게 설정되었습니다. 변수 컬렉션도 '정의되지 않음'으로 푸시됩니다.
내 문제는 내가 계산을하기 때문에 내가 값을 반환해야하는 여러 동작을 가지고있다. – dagopert
모든 액션에서 액세스 할 수있는 액션 외부의 값을 반환 할 수있는 자바 스크립트 함수를 정의 할 수 있습니까? – dagopert
별도의 js 파일에서 createSingleData를 자바 스크립트 함수로 작성하고 해당 파일을 가져온 다음 createSingleData를 호출하여 데이터를 반환 할 수 있습니다. –