Morris是动态键

本文关键字:动态 Morris | 更新日期: 2023-09-27 18:02:14

我正在建立一个图表来跟踪我的产品库存,看我一个月还剩多少。我试着从本月开始建立一个12个月的预测库存。

我想试试Morris.js。在演示中,你有ab作为ykeys。我假设它们是生成物。如果你能控制你的产品列表,效果会很好。但是如果你的用户添加了新产品呢?比如,乘积c, de。你打算如何在没有硬编码的情况下将这些产品放入图表中?

我使用asp.net mvc 5, EF 4代码优先。我不知道该如何实现它。任何帮助都将非常感激。谢谢!

Morris是动态键

您可以为ykeys属性提供一个动态获取的值数组。如何获取这个数组实际上取决于您,但一种可能性是通过Ajax请求。考虑以下内容:

var request = $.ajax({
   url: getGraphDataUrl,
   type: "GET",
   statusCode: {
        200: function (msg) {
            if(typeof msg != 'undefined' && msg.length > 0) {
                msg = JSON.parse(msg);
                Morris.Line({
                    element: 'line-example',
                    data: msg.data,
                    xkey: 'y',
                    ykeys: msg.ykeys,
                    labels: msg.labels
                });
            }
        }
    });

显然,这是一个非常简化的例子。如您所见,许多属性可以通过Ajax请求作为JSON获取。当然,您必须编写将形成JSON响应的服务器端代码,但我认为这超出了这个问题的范围。