Получить переменную внутри функции и назначить ее другой переменной вне ее области видимости - PullRequest
1 голос
/ 24 сентября 2019

Я использую Chartist и VueJS и пытаюсь получить доступ к данным на моем графике.Когда я нажимаю на свой график, я могу получить информацию об индексе моего клика.Я получаю эти данные, но у меня возникают проблемы с передачей этих данных самой Vue.

Вот мой текущий код:

  data() {
    return {
      monthIndex: 0,
      chartData: {
        labels: [],
        series: [[], []]
      },

      /* other chart options that I omitted */

      chartEventHandlers: [
        {
          event: "draw",
          fn(data) {
            if (data.type === "bar") {
              data.element.animate({
                y2: {
                  begin: data.index * 40,
                  dur: "0.3s",
                  from: data.y1,
                  to: data.y2,
                  easing: "easeOutQuad"
                },
                opacity: {
                  begin: data.index * 40,
                  dur: "0.3",
                  from: 0,
                  to: 1,
                  easing: "easeOutQuad"
                }
              });

              data.element._node.onclick = evt => {
                console.log(data.axisX.ticks[data.index]);
               // How do I assign this to monthIndex??

              };
              //
            }
          }
        }
      ]
    };
  }

Как вы можете видеть здесь:

data.element._node.onclick = evt => {
                console.log(data.axisX.ticks[data.index]);
              };

Я могу заставить его отображать правильное значение в консоли, я просто пытаюсь найти способ сделать

monthIndex = data.axisX.ticks[data.index]

Однако monthIndex не существует в области действия функции, поэтомуЯ не могу просто присвоить его этой переменной.Как мне это сделать?Я пытаюсь, чтобы monthIndex отображался в HTML-представлении, чтобы оно менялось при каждом нажатии на другую часть диаграммы.

1 Ответ

0 голосов
/ 24 сентября 2019

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *.1006 * внутри функции, чтобы можно было присвоить значение индекса соответствующей переменной.

...