Javascript AmCharts未加载图像/SVG
所以我偶然发现了Javascript AmCharts未加载图像/SVG,javascript,svg,webpack,vue.js,amcharts,Javascript,Svg,Webpack,Vue.js,Amcharts,所以我偶然发现了AmCharts,一种制作图表的工具,但问题是,我不知道如何让它们与webpack很好地协同工作 我遇到的问题是,AmCharts在node\u模块中找不到自己的SVG图像 例子: 图表初始化和设置: 应该说,我在Webpack中使用Vue.JS。 我正在main.js脚本中导入amcharts.js和serial.js,这样我就可以在整个网站上使用这些图表,但是我是不是忘记导入其他东西了,或者可能是网页在困扰我? 我能够从资产中加载单独的SVG文件,但我似乎无法让AmCha
AmCharts
,一种制作图表的工具,但问题是,我不知道如何让它们与webpack
很好地协同工作
我遇到的问题是,AmCharts
在node\u模块
中找不到自己的SVG图像
例子:
图表初始化和设置:
应该说,我在Webpack中使用Vue.JS。
我正在main.js脚本中导入amcharts.js和serial.js,这样我就可以在整个网站上使用这些图表,但是我是不是忘记导入其他东西了,或者可能是网页在困扰我?
我能够从资产中加载单独的SVG文件,但我似乎无法让AmCharts在其库中加载自己的SVG文件,这应该是自动完成的,他们正在尝试,但加载图表时出现404错误
与Webpack支持人员和AmChart支持人员进行了交谈,但他们只是将此问题推给了其他人。最后在这里发表了这个问题
还应该提到的是,我尝试使用AmCharts中的选项映射到图像,以便它能够找到文件,我甚至尝试将所有图像从node_modules AmCharts文件夹复制到我的资源中,并指向新文件夹,但没有成功
感谢您的帮助,谢谢
致意
Tobias默认情况下,amCharts会尝试在与amCharts.js相同的目录中查找其图像。如果您正在导入这些包含,而不是通过
标记,则可能会失败
要解决这个问题,您需要将属性设置为手动安装amCharts的位置。即:
AmCharts.makeChart("chartdiv", {
"type": "serial",
"path": "/libs/amcharts/",
// ...
});
或者,您可以设置全局AmCharts\u path
变量,以指向AmCharts文件所在的路径。即:
var AmCharts_path = "/libs/amcharts/";
另外,您不需要指定/images/目录的完整路径。它将假定它位于主amCharts目录下。在使用rails和JS amCharts时,类似的问题也发生在我身上
amcharts
查找路径设置的图像
this.pathToImages
内的变量amcharts.js
1-将其值更新为this.pathToImages=”http://cdn.amcharts.com/lib/3/images/“
和本地图像将不再需要
在这里找到这个:
2-另一个解决方法是通过jQuery更新图像路径。e、 对于滚动条图像,您可以这样做
$(“#chart_div>div>div>svg>g:nth child(12)>g:nth child(2)>g:nth child(7)>image”).attr('xlink:href','/path/to/image')
希望这能有所帮助。确实尝试过,但运气不好,我认为webpack可能会将我导入的文件压缩到一个js文件中,使amCharts很难找到它们。我尝试复制所有图像,然后使用“pathToImages”直接将其复制到我的资产中,但也没有成功。您能否检查浏览器控制台,以查看图表试图(或失败)加载的内容?然后确保这些文件在该路径中。阅读页面,在
path
/pathToImages
属性中这与vue或webpack无关。我将编辑标题。