開始遇到這個問題,是源於ViewBag的一個值是個對象類型。 假設是User{ id="1",name="test" } 這樣的結構。那在前端就有可能出現ViewBag.User爲null的狀況。javascript
爲了解決這個問題,查找資料,給出的答案是前端
@{java
if(ViewBag.User==null)對象
{ip
}博客
}編譯
但這樣有個問題,既然已經變成了後臺代碼,怎麼輸出前端代碼呢?test
因而繼續尋找答案,找到了這樣的代碼後臺
@if(ViewBag.User!=null)經驗
{
<p>@ViewBag.User.name</p>
}
因而我也照着這樣寫,但畢竟我這裏是javascript代碼,因此會出現報錯。
爲了解決錯誤,繼續找資料
最後找到了最終的解決辦法
<script>
var id="";
@if(ViewBag.User!=null)
{
<text>
id="@ViewBag.User.id";
</text>
}
</script>
說明:經過使用<text>這個僞元素來強制Razor從編譯模式返回到內容模式。
這樣就輕鬆的解決了前端javascript判斷後臺傳遞的值的問題了。
本博客文章大可能是經驗積累總結,以避免從此忘卻,記錄下來。同時感謝您的閱讀,也但願能對您有所幫助。