ChartJS vue.js中v-show的回调

gv8xihay  于 2022-11-06  发布在  Chart.js
关注(0)|答案(3)|浏览(236)

有没有像on-showed和on-show这样使用vue.js的回调方法?
我在一个div元素上使用了v-show=“my-condition”,但是里面有一些charts.js图表,除非是可见的,否则无法呈现。
有谁知道如何只在父级可见时才呈现chart.js吗?它们位于可选选项卡内,因此可能会多次触发。
我用的是Vue.js和vue-strap。

pbossiut

pbossiut1#

看看this answer. -在类似的情况下,使用nextTick()对我很有效。

  1. new Vue({
  2. ...
  3. data: {
  4. myCondition: false
  5. },
  6. watch: {
  7. myCondition: function () {
  8. if (this.myCondition) {
  9. this.$nextTick(function() {
  10. // show chart
  11. });
  12. } else {
  13. // hide chart
  14. }
  15. }
  16. },
  17. ...
  18. })
展开查看全部
jutyujz0

jutyujz02#

没有你描述的event
但是,您可以使用computed属性,如下所示:

  1. new Vue({
  2. ...
  3. data: {
  4. myCondition: false
  5. },
  6. computed: {
  7. showChart: function () {
  8. if (this.myCondition) {
  9. // show chart
  10. } else {
  11. // hide chart
  12. }
  13. return this.myCondition
  14. }
  15. },
  16. ...
  17. })
  18. <div v-show="showChart"></div>

https://jsfiddle.net/xhfo24qx/

展开查看全部
vlurs2pr

vlurs2pr3#

custom-directive可以将此目标存档此目标
例如:https://stackoverflow.com/a/49737720/4896468
文件:https://v2.vuejs.org/v2/guide/custom-directive.html

相关问题