前一段時間,項目中要用到統計圖表,之前也用過jqplot的圖表插件,這次開發的內容中基於地圖的展示還很多,所以后來選擇了百度的echarts插件(echarts.baidu.com)。剛開始用的時候,版本是2.0的,后來在項目的開發過程中,echarts升級到了3.0,3的版本和2的版本在結構上有很多不同的地方,也有很多2.0版本不具備的功能。但是有的時候,可能是未完全掌握3.0版本的緣故,有的功能在2.0正常使用,但是3.0版本卻展示有些許問題。如果全都是2.0版本開發的或者全是3.0版本開發的還好,但是有的頁面2.0版本開發的功能和3.0版本開發的功能都同時存在,這時候就會有一些不兼容的問題。
一開始我是這樣引用的
<script src="~/Content/js/echarts2.0/echarts.js"></script> <script src="~/Content/js/echarts2.0/chart/bar.js"></script> <script src="~/Content/js/echarts2.0/chart/pie.js"></script> <script src="~/Content/js/echarts3.0/echarts.js"></script> <script> require.config({ paths: { echarts: '../../Content/js/echarts2.0' } }); $(function () { 這里先調用2.0中echarts的繪制方法,再調用3.0的方法 }) </script>
發現echart3的圖表沒有顯示,查看chrome控制台,報錯信息為“echarts is not defined”
ok,調整一下調用順序,代碼如下:
<script src="~/Content/js/echarts3.0/echarts.js"></script> <script> $(function () { 這里先調用3.0中echarts的繪制方法 }) </script> <script src="~/Content/js/echarts2.0/echarts.js"></script> <script src="~/Content/js/echarts2.0/chart/bar.js"></script> <script src="~/Content/js/echarts2.0/chart/pie.js"></script> <script> $(function () { 這里先調用2.0中echarts的繪制方法 }) </script>
這樣問題就解決了,但是具體原因不知道為什么