翼度科技»论坛 编程开发 .net 查看内容

BlazorChartJS

5

主题

5

帖子

15

积分

新手上路

Rank: 1

积分
15
1. 在Blazor中使用Chart.js


  • 首先,从Chart.js官方网站下载Chart.js库文件。
    推荐下载这个构建好的版本https://cdnjs.com/libraries/Chart.js,最新版是v4.2.1
  • 在Blazor项目中把刚刚下载好的Chart.js放到wwwroot目录下。
  • 在Blazor项目中的Pages文件夹下_Host.cshtml文件中添加以下代码:
    1. [/code]
    2. [*]在Blazor组件中使用Chart.js,需要在组件中添加以下代码:
    3. 注意!这个canvas标签的id非常重要!后面调用js的时候要用到它!
    4. 在组件顶部添加一行代码,注入JSRuntime
    5. [code] @page "/"
    6. @inject IJSRuntime JS
    7. <PageTitle>BlazorWithChartJS</PageTitle>
    8. <p>
    9.      <h2>
    10.          在Blazor中使用
    11.          <strong>JavaScript</strong>
    12.          调用
    13.          <strong>Chart.JS</strong>
    14.          绘制曲线图
    15.      </h2>
    16. </p>
    17.    
    18.      <canvas id="AnimationsChart"></canvas>
    复制代码
  • 在Index组件的@code代码块中,添加以下C#代码:
    1.     protected override async Task OnAfterRenderAsync(bool firstRender)
    2.     {
    3.         if (firstRender)
    4.         {
    5.             var jsmodule = $"./Pages/Index.razor.js";
    6.             var jSObject = await JS.InvokeAsync<IJSObjectReference>("import", jsmodule);
    7.             await jSObject.InvokeVoidAsync("animationsChart");
    8.         }
    9.         await base.OnAfterRenderAsync(firstRender);
    10.     }
    复制代码
  • 接下来我们在组件所在目录下创建一个当前组件隔离的js文件Index.razor.js,在组件的代码块中,添加以下JavaScript代码:
    1. export function animationsChart() {
    2.         const ctx = document.getElementById('AnimationsChart');
    3.         const data = {
    4.             labels: ['January', 'February', 'March', 'April', 'May', 'June', 'July'],
    5.             datasets: [{
    6.                 label: 'Looping tension',
    7.                 data: [65, 59, 80, 81, 26, 55, 40],
    8.                 fill: false,
    9.                 borderColor: 'rgb(75, 192, 192)',
    10.             }]
    11.         };
    12.         const config = {
    13.             type: 'line',
    14.             data: data,
    15.             options: {
    16.                 animations: {
    17.                     tension: {
    18.                         duration: 1000,
    19.                         easing: 'linear',
    20.                         from: 1,
    21.                         to: 0,
    22.                         loop: true
    23.                     }
    24.                 },
    25.                 scales: {
    26.                     y: {
    27.                         min: 0,
    28.                         max: 100
    29.                     }
    30.                 }
    31.             }
    32.         };
    33.         new Chart(ctx, config);
    34.     }
    复制代码
    这将创建一个简单的折线图,您可以根据需要更改类型、数据和选项。
  • 运行Blazor应用程序,您应该能够看到您的Chart.js图表!

更多图表类型等信息,请参阅Chart.js官方文档。https://www.chartjs.com.cn/docs/

来源:https://www.cnblogs.com/LambertLee/archive/2023/04/08/17298282.html
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

举报 回复 使用道具