비동기, 약속 등을 이해하려고 노력하고 있었고 기본적인 이해가 있다고 생각하지만 기대했던 결과를 얻지 못했습니다.Knockout.js "visible"호출 비동기 함수 - 작동하지 않습니다.
나는 다음 더불어, HTML 테이블이 :
<table data-bind="visible: viewPrincipal()">
viewPrincipal() true 또는 false를 돌려 함수입니다. viewPrincipal()이 false를 반환하거나 true를 반환하는 경우 가장 기본적인 수준에서 작동합니다. 하지만 내가 뭘하려고하는지 비동기 함수를 호출하여 true 또는 false 값을 가져옵니다.
function viewPrincipal() {
console.log("Seeing if person is in principal group");
return IsCurrentUserMemberOfGroup("Principal Members", function (isCurrentUserInGroup) {
console.log(isCurrentUserInGroup);
return isCurrentUserInGroup;
});
}
console.log가 작동하며 예상대로 true 또는 false를 반환합니다. 하지만 부모의 viewPrincipal() 함수가 true 또는 false 값을 반환하도록하고 싶습니다. 결과는 "undefined"입니다.
왜 이런 일이 벌어지고 있는지 이해합니다. IsCurrentUserMemberOfGroup() 함수를 완료하는 데 약간의 시간이 걸리지 만 해결 방법을 모르겠습니다. 함수를 함께 연결하는 방법을 알고 있지만 knockout.js와 같은 것을 사용하여 테이블을 표시할지 여부를 결정할 때 체인 연결 방법을 모르겠습니다.
아무도 도와 줄 수 있습니까?
고마워요! 여기에 다른 의견과 함께,이 모든 것을 이해하게하는데 매우 도움이되었습니다. 보안상의 문제가 있음을 알고 있습니다. 그러나 다행스럽게도이 변경 요구 사항은 대부분의 사람들이 특정 데이터를 숨기지 않고 대부분의 사람들에게 양식을 더 작고 짧게 만듭니다. 나는 지금 당장 괜찮습니다. –