Asp.Net Core Razor頁面中使用echarts展示圖形
要在Razor頁面中使用echarts顯示圖形,主要問題點在於如何將數據傳遞給js文件。
1,下載安裝echarts庫文件
首先引入echarts文件,Asp.NET Core web項目引入js文件,在wwwroot文件夾上右鍵,選擇添加->客戶端庫。
在打開的窗口中輸入echarts,自動搜索最新版本,安裝即可。
2,引入echarts.min.js文件
打開Pages/Shared/_layout.cshtml文件,在head部分添加引用:
注意,一定要添加在<head></head>中,若添加在<body>部分,會報錯提示無法找到echarts,因為初始化dom前必須確保文件已引入。
3,創建Razor頁面,后端從數據庫獲取數據
前端頁面中,添加一個echarts dom塊,從echarts網站找到一個餅圖,把代碼拷到前端文件中,並修改。
js代碼:
var myChart = echarts.init(document.getElementById('chart1')); option = { tooltip: { trigger: 'item' }, legend: { top: '5%', left: 'center' }, series: [ { name: '數據分類', type: 'pie', radius: ['40%', '70%'], avoidLabelOverlap: false, label: { show: false, position: 'center' }, emphasis: { label: { show: true, fontSize: '40', fontWeight: 'bold' } }, labelLine: { show: false }, data: [ @{ foreach(var pz in Model.Prizes) { <text> { value: '@pz.point', name: '@pz.prizename' }, </text> } } ] } ] }; myChart.setOption(option);
關鍵部分為:
在js代碼中嵌入C#代碼,使用<text>這個偽元素可以強制Razor從編譯模式返回到內容模式。
4,運行測試
大功告成!