无法在Vue项目中使用proj4js,未定义错误proj4

时间:2018-09-20 11:16:21

标签: javascript vue.js webpack proj4js

这就是我所做的: 1 。我按照官方指南使用npm install proj4将proj4js安装到Vue项目中 2。。安装了proj4之后。我重新启动了开发服务器,并尝试导入自己的proj4_def.js,其中包含很多投影定义。 (见下文)

function proj4_def () {
    proj4.defs("EPSG:21781","+proj=somerc +lat_0=46.95240555555556 +lon_0=7.439583333333333 +k_0=1 +x_0=600000 +y_0=200000 +ellps=bessel +towgs84=660.077,13.551,369.344,2.484,1.783,2.939,5.66 +units=m +no_defs");
    proj4.defs("EPSG:25831","+proj=utm +zone=31 +ellps=GRS80 +units=m +no_defs");
    proj4.defs("EPSG:25832","+proj=utm +zone=32 +ellps=GRS80 +units=m +no_defs");
}

export { proj4_def }
  1. 因此,我将proj4_def.js导入到我的Vue组件之一中,方法是:import { proj4_def } from '../proj4_def/GIAGS_proj_defs.js';

  2. 我在创建的挂钩中使用proj4_def()以确保正确定义了我需要的所有投影。

  3. 如果我运行Vue应用程序,则会收到错误:proj4 is not defined

我认为整个链条似乎相对简单,我只是不明白为什么在安装proj4并重新启动开发服务器后未定义proj4

另一个问题是:是否可以使我的proj4_def.js全局访问?在过去,我只需要将proj4_def.js的路径放在HTML <script>标记中并完成工作。我不太了解Vue应用程序的复杂结构。由于我不能只让我的proj4_def.js在全球范围内工作。

0 个答案:

没有答案