본문 바로가기
[개발] 이야기/[DotNet] 이야기

blazor for문에서 index값 참조형이 아닌 값형으로 사용

by 헤이나우
반응형

blazor component를 만드는중 (페이징 콤포넌트)

 

onclick함수에 for문의 i값을 onclick시에 넘겼는데 이게 참조값으로 되어서 for문의 마지막값이 항상 파라미터로 전송이 되는 문제가 발생했다.

 

이때는 for문에 해당 index값을 변수에 담아서 onclick에 넘기면 생각했던 값이 넘어간다.

 

 

@for (var i = 0; i < model.ResultItemCount; i++)
	{
		int local_index = i+1;
		@if (i+1 == CurrnetPageNo)
		{
			<li class="cm_pageing btn_num selected">
				<a onclick="@(()=>Page_OnClick(local_index))" href="javascript:void(0);">@(local_index)</a>
			</li>
		}
		else
		{
			<li class="cm_pageing btn_num">
				<a onclick="@(()=>Page_OnClick(local_index))" href="javascript:void(0);">@(local_index)</a>
			</li>
		}

int local_index = i+1; 이렇게 설정을 안하면 for문의 마지막 인덱스 값이 어떤 태그를 클릭해도 항상 같은 값이 넘어옵니다. 

 

...왜이렇게 만들었을까요

반응형

댓글