Node.js OpenLayer矢量源url在本地运行时不工作
我正在使用Node.js OpenLayer矢量源url在本地运行时不工作,node.js,npm,webpack,openlayers,openlayers-6,Node.js,Npm,Webpack,Openlayers,Openlayers 6,我正在使用OpenLayergraphapi在我的网页上显示图形。我使用Vector(VectorSource)绑定GeoJson数据,如下所示 var vectorSource = new Vector({ url: 'data/geojson/world-cities.geojson', // here I use the file from local folder 'data' format: new GeoJSON(), }); 当我使用npm运行build并从dist文件夹
OpenLayer
graphapi在我的网页上显示图形。我使用Vector
(VectorSource)绑定GeoJson
数据,如下所示
var vectorSource = new Vector({
url: 'data/geojson/world-cities.geojson', // here I use the file from local folder 'data'
format: new GeoJSON(),
});
当我使用npm运行build
并从dist
文件夹运行index.html
构建应用程序时,上述代码工作正常
但是,当我尝试使用npm start在本地运行(在开发模式下)时,它显示以下错误
我花了将近3-4天的时间来解决这个问题,但仍然没有找到运气:(
我检查了json
文件,它是一个有效的json文件。在调试此问题时,我发现它将整个页面的html作为文件内容,然后尝试将其解析为json,这就是它显示错误的原因。
但我不知道为什么需要HTML文件内容来将其解析为JSON
非常感谢您的帮助。相对路径可能有问题(请尝试使用完整路径),如果您使用IIS,MIME类型也可能有问题。请确保在IIS MIME类型设置中定义了.geojson
(或将文件重命名为.json
)。