angular把echarts封装为指令(配合requirejs)

1、在require中配置echartsjs文件


2、在directives下定义指令(定义为全局的指令,任何页面调用都可以)

define(['app','echarts'],function(app,echarts){
    app.register.directive('bar',function(){
           return {
            scope: {
                legend: "=",
                item: "=",
                data: "="
            },
            restrict: 'EA',
            template: '<div id="barId" style="width:400px;border:2px solid blue;height:400px;float:left;"></div>',
            replace: true,
           link: function($scope, iElm, iAttrs, controller) {
               var option = {
                   tooltip: {
                       show: true,
                       trigger: "axis"
                   },
                   legend: {
                       data:$scope.legend
                   },
                   xAxis: [{
                       type: 'value'
                   }],
                   yAxis: [{
                       type: 'category',
                       data: $scope.item
                   }],
                   series: function() {
                       var serie = [];
                       for (var i = 0; i < $scope.legend.length; i++) {
                           var item = {
                               name: $scope.legend[i],
                               type: 'bar',
                               data: $scope.data[i]
                           };
                           serie.push(item);
                       }
                       return serie;
                   }()
               };
               var myChart = echarts.init(document.getElementById('barId'),'macarons');
                myChart.setOption(option);
            }
        };
    })

});

3、路由配置的时候需要注入指令

4、页面调用指令

      注:“=”后面的值可以自定义名称、但要和controller中定义的$scope.后的值对应

5、controller中定义数据:本例中写的假数据(可异步获取)

        


6、页面效果












  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以使用Angular和TypeScript来实现ECharts的柱状图。以下是一个简单的示例: 首先,确保你的Angular项目中已经安装了echarts依赖: ```bash npm install echarts --save ``` 然后,在需要使用柱状图的组件中,你可以按照以下步骤进行操作: 1. 在组件的HTML模板中添加一个div容器,用于渲染ECharts图表: ```html <div id="chartContainer" style="width: 600px; height: 400px;"></div> ``` 2. 在组件的TypeScript文件中引入ECharts和相关的类型定义: ```typescript import * as echarts from 'echarts'; ``` 3. 在组件的生命周期钩子函数中,初始化ECharts图表并配置数据: ```typescript export class YourComponent implements OnInit { ngOnInit() { this.initChart(); } initChart() { const chartContainer = document.getElementById('chartContainer'); const chart = echarts.init(chartContainer); const option = { xAxis: { type: 'category', data: ['A', 'B', 'C', 'D', 'E'] }, yAxis: { type: 'value' }, series: [{ type: 'bar', data: [10, 20, 30, 40, 50] }] }; chart.setOption(option); } } ``` 在上面的示例中,我们使用了一个简单的数据集来创建柱状图,x轴表示类别,y轴表示值。 注意:你可以根据自己的需求修改配置和数据。 4. 最后,在组件的样式文件中为图表容器设置宽度和高度: ```css #chartContainer { width: 600px; height: 400px; } ``` 这样,你就可以在你的Angular项目中使用ECharts来实现柱状图了。记得根据你的实际需求进行配置和样式的调整。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值