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 相关文章推荐
关于图片按比例自适应缩放的js代码
Oct 30 Javascript
javascript编码的几个方法详细介绍
Jan 06 Javascript
Jquery读取URL参数小例子
Aug 30 Javascript
jquery中post方法用法实例
Oct 21 Javascript
jQuery中on()方法用法实例详解
Feb 06 Javascript
使用命令对象代替switch语句的写法示例
Feb 28 Javascript
JavaScript的面向对象编程基础
Aug 13 Javascript
javascript数组去重方法分析
Dec 15 Javascript
jQuery动画_动力节点节点Java学院整理
Jul 04 jQuery
利用HBuilder打包前端开发webapp为apk的方法
Nov 13 Javascript
小程序如何定位所在城市及发起周边搜索
Feb 11 Javascript
js+canvas实现画板功能
Sep 13 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
php中的路径问题与set_include_path使用介绍
2014/02/11 PHP
php5.3提示Function ereg() is deprecated Error问题解决方法
2014/11/12 PHP
Laravel中Facade的加载过程与原理详解
2017/09/22 PHP
些很实用且必用的小脚本代码
2006/06/26 Javascript
Jquery选择器 $实现原理
2009/12/02 Javascript
High Performance JavaScript(高性能JavaScript)读书笔记分析
2011/05/05 Javascript
js判读浏览器是否支持html5的canvas的代码
2013/11/18 Javascript
jquery实现预览提交的表单代码分享
2014/05/21 Javascript
解决jQuery使用JSONP时产生的错误
2015/12/02 Javascript
纯js模仿windows系统日历
2017/02/04 Javascript
详解react-router如何实现按需加载
2017/06/15 Javascript
bootstrap-table实现服务器分页的示例 (spring 后台)
2017/09/01 Javascript
vue19 组建 Vue.extend component、组件模版、动态组件 的实例代码
2019/04/04 Javascript
Node.js爬虫如何获取天气和每日问候详解
2019/08/26 Javascript
layui弹出框Tab选项卡的示例代码
2019/09/04 Javascript
vue中解决微信html5原生ios虚拟键返回不刷新问题
2020/10/20 Javascript
Python3实现从指定路径查找文件的方法
2015/05/22 Python
Python创建模块及模块导入的方法
2015/05/27 Python
python删除过期文件的方法
2015/05/29 Python
Python中is与==判断的区别
2017/03/28 Python
python多线程socket编程之多客户端接入
2017/09/12 Python
Python中顺序表的实现简单代码分享
2018/01/09 Python
flask中主动抛出异常及统一异常处理代码示例
2018/01/18 Python
Django 后台获取文件列表 InMemoryUploadedFile的例子
2019/08/07 Python
python性能测试工具locust的使用
2020/12/28 Python
英国经典球衣网站:Classic Football Shirts
2017/05/20 全球购物
娇韵诗Clarins意大利官方网站:法国天然护肤品牌
2020/03/11 全球购物
劳资专员岗位职责
2013/12/27 职场文书
农民致富事迹材料
2014/01/23 职场文书
男方父母婚礼答谢词
2014/01/25 职场文书
大学生2014全国两会学习心得体会
2014/03/10 职场文书
小学教师个人工作总结2015
2015/04/20 职场文书
大学生求职意向书
2015/05/11 职场文书
微信搭讪开场白
2015/05/28 职场文书
MySQL系列之三 基础篇
2021/07/02 MySQL
Linux下使用C语言代码搭建一个简单的HTTP服务器
2022/04/13 Servers