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四则运算函数代码
Jul 21 Javascript
JS判断字符串变量是否含有某个字串的实现方法
Jun 03 Javascript
jQuery焦点图轮播插件KinSlideshow用法分析
Jun 08 Javascript
巧方法 JavaScript获取超链接的绝对URL地址
Jun 14 Javascript
node.js express安装及示例网站搭建方法(分享)
Aug 22 Javascript
JSON 数据详解及实例代码分析
Jan 20 Javascript
详解AngularJS2 Http服务
Jun 26 Javascript
WebStorm ES6 语法支持设置&amp;babel使用及自动编译(详解)
Sep 08 Javascript
vue.js引入外部CSS样式和外部JS文件的方法
Jan 06 Javascript
AngularJS实现的自定义过滤器简单示例
Feb 02 Javascript
深入探索VueJS Scoped CSS 实现原理
Sep 23 Javascript
JS实现网站吸顶条
Jan 08 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程序员工具
2008/05/26 PHP
PHP EOT定界符的使用详解
2008/09/30 PHP
php 阴历-农历-转换类代码
2012/01/16 PHP
使用php清除bom示例
2014/03/03 PHP
php json相关函数用法示例
2017/03/28 PHP
PHP排序算法之归并排序(Merging Sort)实例详解
2018/04/21 PHP
php实现往pdf中加数字签名操作示例【附源码下载】
2018/08/07 PHP
js如何判断用户是在PC端和还是移动端访问
2014/04/24 Javascript
js 实现的可折叠留言板(附源码下载)
2014/07/01 Javascript
JavaScript实现生成GUID(全局统一标识符)
2014/09/05 Javascript
javascript实现控制浏览器全屏
2015/03/30 Javascript
js实现三张图(文)片一起切换的banner焦点图
2015/08/25 Javascript
属于你的jQuery提示框(Tip)插件
2016/01/20 Javascript
用Angular实时获取本地Localstorage数据,实现一个模拟后台数据登入的效果
2016/11/09 Javascript
jQuery之动画ajax事件(实例讲解)
2017/07/18 jQuery
Vue 组件间的样式冲突污染
2017/08/31 Javascript
Vue.js实现表格渲染的方法
2018/09/07 Javascript
一次Webpack配置文件的分离实战记录
2018/11/30 Javascript
JavaScript 处理树数据结构的方法示例
2019/06/16 Javascript
Vuex 模块化使用详解
2019/07/31 Javascript
seajs和requirejs模块化简单案例分析
2019/08/26 Javascript
JavaScript 如何在浏览器中使用摄像头
2020/12/02 Javascript
Python ZipFile模块详解
2013/11/01 Python
详解使用 pyenv 管理多个版本 python 环境
2017/10/19 Python
使用Python对Dicom文件进行读取与写入的实现
2020/04/20 Python
Python PyQt5模块实现窗口GUI界面代码实例
2020/05/12 Python
.img/.hdr格式转.nii格式的操作
2020/07/01 Python
python super()函数的基本使用
2020/09/10 Python
在html页面中取得session中的值的方法
2020/08/11 HTML / CSS
美国男装连锁零售商:Men’s Wearhouse
2016/10/14 全球购物
Avène雅漾美国官方网站:敏感肌肤护理专家
2016/10/24 全球购物
全球虚拟主机商:HostGator
2017/02/06 全球购物
民事起诉状范文
2015/05/19 职场文书
2015领导干部廉洁自律工作总结
2015/07/23 职场文书
喜迎建国70周年:有关爱国的名言名句
2019/09/24 职场文书
python 制作一个gui界面的翻译工具
2021/05/14 Python