Blazor .razor文件是否支持if块内用return语句省略else分支
Blazor原生支持你需要的在if块内终止后续渲染的写法,你提到的return语句可以直接使用,不需要额外依赖。
正确写法示例
<h1>Some header text</h1> @if(someCondition) { <div> lots of html and what not here taking up many lines</div> return; } <div> more html taking up many lines</div>
当someCondition判断为真时,执行完if块内的内容后遇到return就会直接终止当前组件剩余内容的渲染,完全可以省略else块。
注意事项
return后必须加英文分号;,否则会触发Razor语法解析错误- 该写法仅在组件顶层的渲染逻辑中生效,无法在
@code代码块、嵌套子组件内部通过这种方式终止父层级内容的渲染 - 如果
return写在循环、嵌套if这类嵌套代码块中,仅会终止当前嵌套块的执行,组件顶层的后续内容依然会正常渲染
内容的提问来源于stack exchange,提问作者Ray
相关产品推荐
相关产品推荐

