blazor,@code指令外的define字段和指令内的define域之间的差异



Blazor组件定义的字段内外代码指令

在@code指令外定义字段和在指令内定义字段有什么不同。

@{ int color = 128;} 
for(int i =0; i<250 ;i++) 
{
color++;
<span>@color </span>
} 
<h1>@color</h1>
@code{
int color = 128;
}

我注意到,当我在for中使用这些时会有区别。。请解释发生了什么以及为什么发生。

区别在于范围和初始化变量的时间。

code块中的内容在任何标记渲染之前都已初始化,并且可用于组件中的所有内容。

标记中的内容是本地的,并且只存在于标记的范围内——因此您可以将计数器或临时字符串变量之类的内容放在那里。

把你的标记想象成一个有趣的C#代码块,你就会有正确的想法。

相关内容

  • 没有找到相关文章

最新更新