首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Vue 3正在加载svgPanZoom的脚本,但未定义函数

Vue 3正在加载svgPanZoom的脚本,但未定义函数
EN

Stack Overflow用户
提问于 2021-01-02 22:32:08
回答 2查看 226关注 0票数 1

遵循项目的github中的说明,但以下代码不起作用。获取错误=“未捕获(在promise中) ReferenceError:未定义svgPanZoom”

注意到在网络选项卡中正在加载相应的脚本。在非vue站点中使用它,它可以正常工作。

代码语言:javascript
复制
<script>
export default {
  name: 'Map',
  data() {
    return {
      
    };
  },
  mounted() {
    this.$loadScript('https://unpkg.com/panzoom@9.4.0/dist/panzoom.min.js').then(() => {
      // Script is loaded, do something
       var element = document.getElementById('mapsvg');

  // and forward it it to panzoom.
  panzoom(element);
      //console.log('loaded.');
    });
  },
};
</script>

#mapsvg是包含在具有该id的模板中的svg。

我敢肯定,作为一个javascript新手,我遗漏了一些明显的东西。HALP PLZ :)

EN

回答 2

Stack Overflow用户

发布于 2021-01-02 23:29:51

对于vue,最好使用现成的svgpanzoom模块。

安装包: npm I vue-svg-pan-zoom

要使用以下命令:

代码语言:javascript
复制
<template>
   <SvgPanZoom 
     style="width: 500px; height: 500px; border:1px solid black;"
     :zoomEnabled="true"
     :controlIconsEnabled="true"
     :fit="false"
     :center="true"
     >
     <svg>
        <circle x="10" y="10" r="5" />
     </svg>
    </SvgPanZoom>`
 </template>

 <script>
   import SvgPanZoom from 'vue-svg-pan-zoom';
   export default {
     components: {  SvgPanZoom },
    };
 </script>

https://www.npmjs.com/package/vue-svg-pan-zoom

票数 0
EN

Stack Overflow用户

发布于 2021-01-03 23:09:04

已通过更改为正确的函数进行更正:

代码语言:javascript
复制
 var element = document.getElementById('mapsvg');

      // and forward it it to panzoom.
      panzoom(element);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65540224

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档