inflearn logo
강의

講義

知識共有

ASP.NET core Blazor 詳細講義 - 初級編

변수 상태유지

解決済みの質問

237

gunhak019097

投稿した質問数 11

1

안녕하세요 오랜만에 학습하다 궁금한점이 있어 문의 남깁니다.

 

  1. razor 페이지에 변수를 선언해 해당 값을 화면에 보여주는 작업을 할 시 사이드바를 통해 다른페이지로 이동했다 돌아오면 변수가 없어지게 됩니다. 이를 해결하기 위해 클래스를 선언 후 해당 클래스를 종속성 주입을 통해 해당 클래스 내부의 변수를 사용하는 식으로 해결했는데 이 방법이 정석적인 방법인지 궁금합니다.

 

  1. cs파일의 클래스를 통해 함수를 구현하는데 해당 함수에서 다른 razor페이지에 직접 접근해 데이터를 화면에 뿌리는 방법이 있는지 궁금합니다. 현재는 방법을 찾지 못해 cs파일을 사용하지 않고 해당 함수 내용을 razor 파일의 code 부분에 해당 함수 내용을 구현해 사용하고 있습니다.

     

  2. 배열에 값을 입력하고 입력되는 값들을 화면에 보여주기 위해 StateHasChanged() 를 사용해 보여주었는데 해당 페이지에서는 잘 동작을 하는데 다른 페이지로 이동 후 다시돌아오면 StateHasChanged()가 작동하지 않습니다. 디버그 확인해보니 페이지를 이동했다 와도 배열에 값을 정상적으로 삽입이 됩니다. 다른 이벤트(버튼 클릭) 등이 발생하면 화면에 보여주는 작업이 동작하는데 StateHasChanged()로는 동작 안하는게 이해가 안갑니다... 디버그 모드로 확인 시 StateHasChanged를 수행하기는 하는데 화면에는 변화가 없습니다. 이런경우가 있나요?

 

항상 감사합니다.

.NET ASP blazor

回答 1

0

backchur

  1. 정석적..... 이라고 확신해드리기는 어렵지만 msdocs에서 권장하는 바라 아마 제일 괜찮은 방법이지 아닐까 싶습니다.

     

  2. 장담합니다. razor 페이지를 REST API 처럼 값만을 되돌리는 방식으로 만드는 하나 빼고는 없을 것 같습니다. 만약 한 razor 페이지를 불러왔을 때 json 값만을 응답시키고 cs 파일 안에서 getfromjsonasync 로 그 json 값을 가져오는 것 빼고는 없을 것 같습니다.

  3. statehaschanged 보통 수명구성요소(Oninitialized 등등) 함수 안에서나 이와 연결된 함수에서만 작동하는 것으로 알고 있습니다. 만약 클릭시 발동하는 일반 함수 같은 경우에서는 설령 statechange를 불러 오더라도 렌더링이 다시 되지는 않을 것으로 예상됩니다. 만약 수명 구성 요소 함수 안에서 불러왔는데도 변화가 없다고 한다면 이는 페이지 라우팅과 겹쳐서 일 것으로 추정됩니다.예로 /page/1 -> /page/2 로 이동했을 때 렌더링이 꼬이는 경우가 제 홈페이지에서도 간혹 보이고는 했습니다. 그럴때는 페이지 이동을 navigationmanager를 써서 진행하였습니다. 이동시에 문제가 생긴다면 기본 지원 기능인 navigationmanager를 한번 사용해 보세요~

0

gunhak019097

항상 자세하고 빠른 답변 감사합니다.

navigationmanager를 통해 전환하는 방법 한번 시도해보도록하겠습니다!

SERVER 2019 애저 세팅 설치 오류

0

146

1

클래스 라이브러리 (.NET Core)이 없으면 클래스 라이브러리 선택하시면 됩니다.

0

135

1

NET 9.0 버전에서의 레이아웃 적용

1

171

1

Visual Studio 2022에서 프로젝트 만들기 질문

0

317

2

Radzen.Blazor.RadzenTheme 오

0

262

4

MVC를 제대로 이해를 못했는데,

0

175

1

ASP.NET

0

153

1

Class 설계 후 Razor 에서 호출!

0

96

1

wpf 응용 질문

0

80

1

3번째 강의 11분 39초에서 진행이 안됩니다. 여러번해도 그곳에서 오류납니다.

0

97

2

올려주신 소스코드 관련해서 질문드립니다.

0

178

2

LING #1 에서.. 서버 GC문제

0

263

3

강의 잘들었습니다. 감사합니다. 질문이 있어서요...

0

249

1

블레이저 서버와 웹어셈블리

0

1270

1

blazor server 에서의 token auth 진행 과정

1

993

1

button click에 연결한 함수 실행시, 다른 태그에 연결한 동일 함수가 실행되는 이유.

0

465

1

재질문

1

312

1

프로젝트 기본 구조

1

265

1

RenderMode

1

557

1

수명 구성 요소에 대한 질문

1

257

1

SPA에 대한 질문 -2

1

295

2

SPA에 대한 질문

1

263

1

종속성 주입

1

387

2

페이지 생성

1

281

2