当前位置: 首页 > news >正文

vue-cli2使用cdn方式引入cytoscape

1. index.html头部引用

  <script src="https://cdnjs.cloudflare.com/ajax/libs/cytoscape/3.2.19/cytoscape.min.js"></script>

2. 修改webpack.base.cong.js

module.exports = {
...
  externals: {
    cytoscape: "cytoscape"
  }
...
}

3. 在相关组件的ts中

import { Vue, Component, Watch, Prop } from "vue-property-decorator"
import cytoscape from "cytoscape"
@Component({})

export default class Cytoscape extends Vue {
    /* ---- 变量 ---- */
    cy;

    /* ---- 函数 ---- */

    /* ----生命周期 ---- */
    mounted() {
        this.cy = cytoscape({
                           container: document.getElementById('cy'); // 组件中要有id="cy"的dom元素
            ...   //配置项
        });
    }
}        

 

4. 注意,我这里使用的是ts,所以需要cytoscape 的类型声明文件,使用npm install @types/cytoscape 安装的声明文件是2.7.10版本的(估计后面版本没有及时更新),落后于我项目中引入的cytoscape 3.2.19版本,有些声明会不一致。

解决办法:a. 在自己项目的types文件夹中新建文件cytoscape.d.ts;

b. 找到./node_modules/_@types_cytoscape@2.7.10@@types/cytoscape/index.d.ts,复制其内容到上一步新建的文件cytoscape.d.ts;删除node_modules下的_@types_cytoscape@2.7.10@@types

c. 在使用cytoscape 3.2.19报错时,去修改cytoscape.d.ts声明;

d. 以上只是暂时解决方案,期待cytoscape同步类型声明文件

 

cytoscape其他使用方式: http://js.cytoscape.org/#getting-started/including-cytoscape.js
我之所以选择使用cdn引入,主要是因为项目已经引入不少的框架,导致打包上线时项目太大,对于这种本身功能较强比较厚重而我用到的功能又不多的框架,便使用cdn引入了

转载于:https://www.cnblogs.com/XHappyness/p/9915373.html

相关文章:

  • VS2015 提示 无法启动 IIS Express Web 服务器
  • P5003 跳舞的线 - 乱拐弯
  • 阿里数据库十年变迁,那些你不知道的二三事
  • RTSP(Real Time Streaming Protocol)实时流传输协议详解
  • 《三块广告牌》
  • 【重磅】Spring Boot 2.1.0 权威发布
  • Laravel Telescope:优雅的应用调试工具
  • iOS 传感器集锦
  • 2018-2019-1 20165323 《信息安全系统设计基础》第七周学习总结
  • elasticsearch Query DSL(三)
  • 在 centos 上安装 Jenkins
  • 以太坊生态系统中的开发工具和技术
  • git命令——revert、reset
  • 如何高效的使用 Git
  • opencv模板匹配有趣的链接
  • 2017-08-04 前端日报
  • golang 发送GET和POST示例
  • Java|序列化异常StreamCorruptedException的解决方法
  • java正则表式的使用
  • Mithril.js 入门介绍
  • Netty 框架总结「ChannelHandler 及 EventLoop」
  • python 装饰器(一)
  • Sass 快速入门教程
  • uni-app项目数字滚动
  • yii2中session跨域名的问题
  • zookeeper系列(七)实战分布式命名服务
  • 订阅Forge Viewer所有的事件
  • 动手做个聊天室,前端工程师百无聊赖的人生
  • 分享一份非常强势的Android面试题
  • 互联网大裁员:Java程序员失工作,焉知不能进ali?
  • 软件开发学习的5大技巧,你知道吗?
  • 什么是Javascript函数节流?
  • 系统认识JavaScript正则表达式
  • 译自由幺半群
  • Spark2.4.0源码分析之WorldCount 默认shuffling并行度为200(九) ...
  • 新年再起“裁员潮”,“钢铁侠”马斯克要一举裁掉SpaceX 600余名员工 ...
  • ​如何防止网络攻击?
  • #100天计划# 2013年9月29日
  • #define 用法
  • #中的引用型是什么意识_Java中四种引用有什么区别以及应用场景
  • %3cli%3e连接html页面,html+canvas实现屏幕截取
  • (3)选择元素——(17)练习(Exercises)
  • (独孤九剑)--文件系统
  • (非本人原创)史记·柴静列传(r4笔记第65天)
  • (附源码)spring boot校园拼车微信小程序 毕业设计 091617
  • (转)LINQ之路
  • .“空心村”成因分析及解决对策122344
  • .NET 8.0 中有哪些新的变化?
  • .NET Entity FrameWork 总结 ,在项目中用处个人感觉不大。适合初级用用,不涉及到与数据库通信。
  • .net Stream篇(六)
  • .NET框架设计—常被忽视的C#设计技巧
  • .NET设计模式(8):适配器模式(Adapter Pattern)
  • .net下简单快捷的数值高低位切换
  • .Net中wcf服务生成及调用
  • /deep/和 >>>以及 ::v-deep 三者的区别