vue-cli脚手架引入弹出层layer插件的几种方法


Posted in Javascript onJune 24, 2019

1.如何引入

在vue-cli里,引入文件有几钟方法

一种是用npm或者cnpm指令去下载对应的插件,然后在main.js里用import方法引入,这里不讨论这种方法

我比较喜欢采用的是直接下载对应的js,然后引入到vue项目中去

问题来了,如何引入呢

方法如下:

  • 下载对应的js文件或者css文件,一般下载插件相关联的都会在一起
  • 进入vue-cli项目工程里的index.html文件,分别引入css文件和js文件

在这里,分别是

<link rel="stylesheet" href="./static/layer.css" rel="external nofollow" /> 
  <script src="./static/jquery.js"></script>
   <script src="./static/jquery.min.js"></script>
   <!-- 必须先引入上面jq 1.8版本以上的才能引layer -->
   <script src="./static/layer.js"></script>

这样在全局文件里都可以使用layer弹出层插件了,需要注意,必须先引入jq 1.8以上的版本才可以使用layer噢。

2.弹出层显示不出

  • 作为一个java开发小菜鸟,踩前端的坑基本是面向百度进行尝试解决,经历了时常两个半小时的挣扎,解决了几个问题:
  • 第一个是前端控制台报错,印象里是i is not a function 还有什么layer.open is not a function等,这些问题基本是出于引入的问题,解决途径:检查是否在之前引入了1.8以上的jq
  • 第二个是弹出层只有文字显示,但是缺乏样式,没有弹出层的feel。经过大量百度和分析,最后还是依靠调试前端样式看出端倪,问题在于里面用到的class在我引入的css文件里并不存在。经过检查,导入的css文件错误(注意有手机的css样式和另一个css,这里要用另一个,名称一样)。最终问题解决。

ps:下面看下在Vue中使用layer.js弹出层插件

layer.js(mobile)是一个小巧方便的弹出层插件,在之前的apicloud项目中被大量使用,但最近对apicloud的IDE、非常不友好的文档和极低的开发效率深感厌烦,决定弃用然后转向Vue开发。在开发过程中引入layer.js的时候遇到了麻烦。原因是layer.js不支持import导入,这时就需要修改一下它的源码。在看过它的源码后,发现需要修改的地方只有两处,

源码中已经暴露了一个全局变量layer,故只需在脚本末尾处添加

export default layer;1

这表示将这个全局变量导出。

然后在文件中找到下面的代码注释掉,这段代码是为layer添加样式的,但使用的路径不对,故没有太大帮助。

document.head.appendChild(function() {
  var link = doc.createElement('link');
  link.href = path + 'need/layer.css?2.0';
  link.type = 'text/css';
  link.rel = 'styleSheet'link.id = 'layermcss';
  return link;
} ());

接下来把layer.js和layer.css分别放入static/js和static/css中,在需要的地方,比如组件内部或者全局注册,因为项目多处都会用到,所以采用全局注册,在main.js中

import layer from '../static/js/layer.js'

layer.css也使用全局注册,它可以放在index.html中通过link引入,也可以放在App.vue中

<!--index.html-->
<link rel="stylesheet" href="./static/css/layer.css" />
<!--或者-->
<!--App.vue-->
<style>
@import "../static/css/layer.css";
</style>

接下来就能在各个组件中使用layer.open等方法了。

这种方式应该可以适用于各种不支持import导入的脚本,即非npm提供的module。

总结

以上所述是小编给大家介绍的vue-cli脚手架引入弹出层layer插件的几种方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
sina的lightbox效果。
Jan 09 Javascript
一个网马的tips实现分析
Nov 28 Javascript
jQuery判断元素是否存在的可靠方法
May 06 Javascript
JavaScript中函数表达式和函数声明及函数声明与函数表达式的不同
Nov 15 Javascript
JS组件Bootstrap Select2使用方法解析
May 30 Javascript
AngularJS过滤器filter用法总结
Dec 13 Javascript
前端开发不得不知的10个最佳ES6特性
Aug 30 Javascript
JavaScript实现为事件句柄绑定监听函数的方法分析
Nov 14 Javascript
VUE 配置vue-devtools调试工具及安装方法
Sep 30 Javascript
vuex的module模块用法示例
Nov 12 Javascript
JavaScript简单实现动态改变HTML内容的方法示例
Dec 25 Javascript
axios如何利用promise无痛刷新token的实现方法
Aug 27 Javascript
浅谈一个webpack构建速度优化误区
Jun 24 #Javascript
vue项目中运用webpack动态配置打包多种环境域名的方法
Jun 24 #Javascript
Vue.js+cube-ui(Scroll组件)实现类似头条效果的横向滚动导航条
Jun 24 #Javascript
JavaScript学习教程之cookie与webstorage
Jun 23 #Javascript
React组件对子组件children进行加强的方法
Jun 23 #Javascript
vue使用websocket的方法实例分析
Jun 22 #Javascript
JS实现简单的文字无缝上下滚动功能示例
Jun 22 #Javascript
You might like
如何提高MYSQL数据库的查询统计速度 select 索引应用
2007/04/11 PHP
新手学习PHP的一些基础知识分享
2011/07/27 PHP
php中导出数据到excel时数字变为科学计数的解决方法
2013/02/03 PHP
php中限制ip段访问、禁止ip提交表单的代码分享
2014/08/22 PHP
php将数组转换成csv格式文件输出的方法
2015/03/14 PHP
php微信公众平台开发类实例
2015/04/01 PHP
javascript 写类方式之九
2009/07/05 Javascript
jQuery 阴影插件代码分享
2012/01/09 Javascript
js 去除字符串第一位逗号的方法
2014/06/07 Javascript
教你如何使用node.js制作代理服务器
2014/11/26 Javascript
使用javascript获取页面名称
2014/12/23 Javascript
BOOTSTRAP时间控件显示在模态框下面的bug修复
2015/02/05 Javascript
Vue.js实战之组件的进阶
2017/04/04 Javascript
强大的 Angular 表单验证功能详细介绍
2017/05/23 Javascript
vue中axios处理http发送请求的示例(Post和get)
2017/10/13 Javascript
vue 组件中slot插口的具体用法
2018/04/03 Javascript
小程序实现多选框功能
2018/10/30 Javascript
微信小程序 调用微信授权窗口相关问题解决
2019/07/25 Javascript
JS中的算法与数据结构之列表(List)实例详解
2019/08/16 Javascript
在weex中愉快的使用scss的方法步骤
2020/01/02 Javascript
windows系统下Python环境的搭建(Aptana Studio)
2017/03/06 Python
详解Python判定IP地址合法性的三种方法
2018/03/06 Python
Python 字符串操作(string替换、删除、截取、复制、连接、比较、查找、包含、大小写转换、分割等)
2018/03/19 Python
python实现的登录与提交表单数据功能示例
2019/09/25 Python
查看端口并杀进程python脚本代码
2019/12/17 Python
Python连接Oracle之环境配置、实例代码及报错解决方法详解
2020/02/11 Python
Django 多对多字段的更新和插入数据实例
2020/03/31 Python
解决jupyter运行pyqt代码内核重启的问题
2020/04/16 Python
纯CSS实现菜单、导航栏的3D翻转动画效果
2014/04/23 HTML / CSS
详解canvas绘制网络字体几种方法
2019/08/27 HTML / CSS
First Aid Beauty官网:FAB急救面霜
2018/05/24 全球购物
Linux面试题LINUX系统类
2015/11/25 面试题
自荐书模板
2013/12/15 职场文书
迟到早退检讨书
2014/02/10 职场文书
用python画城市轮播地图
2021/05/28 Python
Windows Server 版本 20H2 于 8 月 9 日停止支持,Win10 版本 21H1 将于 12 月结束支
2022/07/23 数码科技