search

Home  >  Q&A  >  body text

javascript - 关于模块化引入echarts的问题

最近被这个echart引入的问题折磨得头大,况且自己也没什么模块化经验,所以想请教一下各位高手,为什么下面第一种方式就可以成功展现echart饼状图,而第二种方式就不行呢?代码片段如下:

<script src="js/esl.js"></script>      //类似于require.js的东东吧,不加上图表出不来
<p id="main" class="Cshenzi" style="width:500px;height:508px;opacity:0.85;">
</p>        //echart图表容器
<script type="text/javascript">
(第一种方式)
    require.config({
        paths:{ 
            'echarts' : 'js/echarts'
        }
    });
    require(
        [
            'echarts',
            'echarts/chart/pie' // 使用柱状图就加载pie模块,即使没有这个路径
        ],
        function(ec) {
            //主函数,生成echart实例,绘制图表
        }

(第二种方式,与第一种方式的唯一区别就是require(['echarts'],...)这里少加载了'echarts/chart/pie',可是我天真的觉得这个pie没必要加载啊,况且我的js目录里面也没有/chart/pie这个子文件夹,那为什么加了这个就能展现,而不加这个又不能展现呢?)

<script src="js/esl.js"></script>
<p id="main" class="Cshenzi" style="width:500px;height:508px;opacity:0.85;">
</p>
<script type="text/javascript">
    // 路径配置
    require.config({
        paths:{ 
            'echarts' : 'js/echarts'
        }
    });
    // 使用
    require(
        [
            'echarts'
        ],
        function(ec) {
        //主函数,生成echart实例,绘制图表

//另外项目的js文件夹结构是单根的,所以压根没有那个echarts/chart/pie。

--js
  |echarts.js
  |esl.js
PHP中文网PHP中文网2820 days ago556

reply all(3)I'll reply

  • 大家讲道理

    大家讲道理2017-04-10 14:58:54

    估计你舍去的那个参数不带,就内部报错了吧。试着填个空值试试。

    reply
    0
  • 高洛峰

    高洛峰2017-04-10 14:58:54

    'echarts/chart/pie' 要加的,它不是文件夹,是模块,只是省去了js的后缀名。

    reply
    0
  • 大家讲道理

    大家讲道理2017-04-10 14:58:54

    echart不是提供了原生引用的方式吗?
    如果你的项目本身不是CMD方式,那就用标签引用的方式。

    reply
    0
  • Cancelreply