今天说一下 this._init is not a function 的报错,这个不会影响界面显示问题,除非你没有安装那些必须要添加的库;
浏览器控制台报错:this._init is not a function
这个报错网上也有搜到一些答案,都是一些说要添加 “vue-loader、 vue-html-loader、 style-loader、css-loader、vue-style-loader、 css-loader”,基本上都是围绕这几个来解决的,
网址分别是:
https://segmentfault.com/q/1010000004897621/a-1020000005646082
https://blog.csdn.net/zhangchao19890805/article/details/53375934
https://blog.csdn.net/wahaha13168/article/details/73648122
https://blog.csdn.net/qq_38967608/article/details/81189069
如果我的方案解决不了,可以去看看上面这几个网站的解决方法。
接着说我的报错和解决方案;
先来看看报错的是什么??
截图:
截图上有两个报错,在我这里其实都是一个问题引起的,下面看看引起报错的是什么??
截图:
没错,你看到的就是它引起的,jquery
为什么这么说呐?
那是因为我在配置文件里已经声明引入了全局,而这里又一次的引入声明,直接引起了报错(当然代码执行顺序可能是先执行 main.js,或者是先执行配置文件,不过这些不是重点)。
配置文件:webpack.base.conf.js
截图:
解决方案:
1、在 main.js 声明引入 jquery
2、在配置文件 webpack.base.conf.js 中声明引入
注:二选其一就好
个人推荐是第二个方案。为什么哪?
因为有些第三方 js 文件中有闭合包的话,你会注意到js文件最下面有这一句代码 " (window.jQuery) 、(jQuery) 或者是 (function ($) {})()",这三句代码需要全局的支持,而且每个第三方 js 文件所写的都不是统一其中一句代码,在main.js中不可能在去一个一个的定义,所在第二个方案能帮你解决这个烦恼;
谢谢您的御览!