最近几天做一个密码加密功能,需要引入js压缩文件,但是在vue中反复引用都找不到方法的存在,试过很多方法,但功夫总是不负有心人,最终知道问题所在。
vue引入jq以及zepto之类的压缩文件是直接一个$变量名就可以使用的,但是有一些压缩的js并不可以像jq一样直接在vue内部使用的,当你发现引入不能够被找到的时候,不要急,先去看看jq的压缩文件再看看你那个压缩文件,两者的不同点,有时间多去研究研究一些源码,对我们有很大的帮助!
1:为什么我不能使用,大家先看一下vue脚手架目录文件;
2:我的所有js压缩文件都在assets文件夹内,我在内部引用jq之类插件是完全没有问题的!但是有一些直接在html中script元素引入的插件在vue内部import是没有用的,并不可以调用方法! 其实这是一个很简单的问题,只是我一开始想的复杂化了!和webpack也有点关系,下面直接说出怎么修改吧!
3:首先,我们要知道,vue是基于webpack来配置出来的,webpack在这不多讲,大家如果看过我的文档应该知道webpack配置react脚手架会有一个模块化的问题,可以设定一个特定的文件夹来控制模块化的问题!下面vue这个问题跟这个是一样的性质,是与webpack有关!
4:要想我们在. vue文件内使用此等js压缩文件的方法,那么首先我们要在index.html入口文件引入:
5:一开始我的文件都在assets文件夹内,在index里面直接引入并不会出现效果,这个不多讲,也是因为webpack;我们只需要将assets内的js压缩文件,放在static文件夹内就可以直接在index.html内引入了!!!就是这么简单!!!!我们在用的时候,比如文件内有一个方法名叫做clearTbarr,我们要用这个方法,那么直接在.vue中使用即可 :clearTbarr 【ok】