如何在angularjs中添加visjs事件?

前端之家收集整理的这篇文章主要介绍了如何在angularjs中添加visjs事件?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
visjs doc中,我需要在angularjs项目中启用一个stabilizationProgress事件.我已经为此创建了一个 plunker demo.

我尝试了类似下面的内容,但不确定如何使用angularjs添加进度条.这是link to give an idea

<vis-network data="data" options="options" events="events"></vis-network>

控制器代码

$scope.events = [{
    stabilizationProgress: function (obj) {

    },stabilizationIterationsDone: function () {

    }
}];

解决方法

启用将在angular和vis之间传输数据的指令. vis的每个特征都可以在角度上模仿,与其消化周期相结合.

指令是处理DOM操作以及与第三方插件(如vis)的集成.

例如,如果你想在vis告诉某事时得到更新的东西,你可以实现如下(假设vis.event()是来自vis API的真实方法):

/* On directive's link() function */

vis.event('bla-bla-bla',function (arg1,arg2,arg3) {
    scope.$evalAsync(function () {
        scope.emit('vis:bla-bla-bla',arg1,arg3);
    });
});

在您的控制器上,您可以收听此事件:

// On a parent controller where the directive is placed
//
// The $scope below can be $scope too,// but it will traverse all child scopes first
$scope.$on('vis:bla-bla-bla',function ($event,arg3) {
    $event.stopPropagation(); // Useful,to avoid performance leak

    console.log($event,arg3);
});

编辑1:

我读过你指出的一些Plunkr:

http://plnkr.co/edit/XlRkfazfYBmj0GM1PTeC?p=info

事件系统已经存在,您缺少vis-network元素上的属性,事件一,事件需要绑定到它.

我建议你注释掉其中的一些,每次取消注释,看看它是否正常工作.目前,他们都活跃并登录控制台!

猜你在找的Angularjs相关文章