方法一:异步加载第三方库

在我们的vue工程中新建如下路径:src/utils/index.js,在index.js中实现如下方法:

export function loadScript(url) {
let isLoaded = false;
return new Promise((resolve,reject) => {
if(isLoaded) {
resolve();
return true;
}
let script = document.createElement('script');
script.type = 'text/javascript';
script.charset = 'utf-8';
script.async = true;
script.src = url;
script.onerror = reject;
script.onload = function () {
isLoaded = true;
resolve();
}
document.head.appendChild(script);
})
}

我们在static下面创建一个lib.js文件存放普通的方法:

function sum(a,b) {
return a + b;
}

那么我们在某一个vue页面引入这个loadScript,在lib.js加载完成后再执行后续的操作,如下vue页面代码:

<template>
<div>
其他组件内容
</div>
</template> <script>
import {loadScript} from '@/utils/index.js';
export default {
data() {
return { }
},
created() {
loadScript('./static/lib.js').then(() => {
console.log(sum(2,3))
})
},
methods: { }
}
</script> <style>
</style>

当然也可以使用插件来实现。

  • vue框架使用:vue-plugin-load-script
  • react框架使用:react-load-script

方式二:index.html静态模板script标签引入

<script type="text/javascript" src="./static/lib.js"></script>

然后在其他vue页面就可以全局调用lib中的方法了。

vue+webpack工程中怎样在vue页面中引入第三方非标准的JS库或者方法的更多相关文章

  1. js 和 css 中 不能使用 jsp 页面中一些 标签 和 java 代码等,应注意

    js  和 css 中 不能使用 jsp  页面中一些 标签 和 java 代码等,应注意 如 ${ }  <%%>  等

  2. Xcode6.1标准Framework静态库制作方法。工程转Framework,静态库加xib和图片。完美解决方案。

    http://www.cocoachina.com/bbs/read.php?tid-282490.html Xcode6.1标准Framework静态库制作方法.工程转Framework,静态库加x ...

  3. Vue引入非npm的js库

    Vue引入非npm的js库 Vue项目有时候需要一些没有export的js库,不能通过import引入,那么使用方法如下 1.可以在index.html页面使用script标签引入,当然也可以使用cd ...

  4. 项目中Ajax调用ashx页面中的Function的实战

    前台页面: 使用几个display=none的空间存储DropdownList中的值,点击Search Button后刷新页面再次给DropdownList赋值使用 <%@ Page Langu ...

  5. 在php中,如何将一个页面中的标签,替换为用户想输出的内容

    前言:釜山行,暴露人性, ———————————————————————————————————————————————————————————————————————————— 今天说一个最简单的例 ...

  6. 在action中将字符串、对象、list集合保存到值栈中,在jsp页面中获取的方法

    转自:csdn 封装对象User,属性有id,username,email等1.1:在action中将字符串保存到值栈中   1.1.1 获取值栈对象         ValueStack stack ...

  7. 解决同一页面jQuery多个版本或和其他js库冲突方法

    <!DOCTYPE html> <html lang="en" xmlns="http://www.w3.org/1999/xhtml"> ...

  8. vue+webpack工程环境搭建

    使用Vue-cli脚手架(属于vue全家桶)快速构建一个项目: [1]首先需要安装好node.js; [2]安装webpack,指令$npm install -g webpack; //如果之前有安装 ...

  9. ASP.NET上传文件,已经上传的大小保存在session中,在另一个页面中读取session的值不行

    想自己做个ASP.NET上传文件时显示进度条的, 按照自己的想法,其实也就是显示每次已经上传的字节,从网上找到一个方法是能够把文件变成流以后再慢慢写入的,我在那个循环写入的时候每循环一次都把已经上传的 ...

  10. 让Android中的webview支持页面中的文件上传

    android webview在默认情况下是不支持网页中的文件上传功能的: 如果在网页中有<input type="file" />,在android webview中 ...

随机推荐

  1. 可视化学习:如何用WebGL绘制3D物体

    在之前的文章中,我们使用WebGL绘制了很多二维的图形和图像,在学习2D绘图的时候,我们提过很多次关于GPU的高效渲染,但是2D图形的绘制只展示了WebGL部分的能力,WebGL更强大的地方在于,它可 ...

  2. 分布式事务的概念和解决方案Seate

    引入分布式事务: 在电商系统中,扣减库存与保存订单是在两个服务中存在的,如果扣减库存后订单保存失败了是不会回滚的,这样就会造成数据不一致的情况,这其实就是我们所说的分布式事务的问题,接下来我们来学习分 ...

  3. Swift开发基础04-枚举

    基本用法 enum Direction { case north case south case east case west } enum Direction { case north, south ...

  4. [oeasy]python0012_程序写错了怎么办

    运行python文件_报错处理_NameError 回忆上次内容 回忆 上次内容 vi oeasy.py 用 vi 编辑 oeasy.py   cat oeasy.py 用 cat 查看 oeasy. ...

  5. oeasy 教您玩转 linux 010400 总结 summary

    ###### 上一部分我们都讲了什么?*   各种gui*   qt和gdk两个开源工具跨平台开发库*   发行版和gui之间的关系###### 我们一起来回顾一下整个学习过程*   我们从零开始*  ...

  6. Top monitor[2.1.11] 开源

    说明 本项目将转为开源项目. \(\text{GitHub}\) 仓库下载链接 \(|\) 项目初始化下载 \(|\) 项目编辑文件下载. 项目说明 声明:此项目由 \(\text{So_noSlac ...

  7. SQL Server 图解备份(完全备份、差异备份、增量备份)和还原

    常用的数据备份方式有完全备份.差异备份以及增量备份,那么这三种备份方式有什么区别,在具体应用中又该如何选择呢? 1.三种备份方式 完全备份(Full Backup):备份全部选中的文件夹,并不依赖文件 ...

  8. [香橙派开发系列]使用wiringPi控制26个引脚

    目录 前言 一.香橙派使用的包 二.使用wiringPi包的命令 1.下载wiringOP 2.gpio readall信息分析 3.设置gpio的模式 4.设置gpio输出的电平 三.wiringP ...

  9. MIT6.1810の学习笔记

    webliuのmit.6.828学习笔记 写在前面 本文基于mit/6.828课程,附官方网址. 本文采用的实验环境为2020年版的xv6系统,需要wsl,vscode,docker工具.附环境配置教 ...

  10. 强化学习游戏仿真环境:torcs的安装——自动驾驶、赛车游戏环境

    Ubuntu系统下可以有两种安装方式: 1. 通过系统软件库进行安装,命令: sudo apt install torcs torcs-data 该种安装方式比较简单,容易成功,缺点就是必须要有sud ...