请问在 vue-cli 引入一个 js 文件(微信)并使用,最简单的方法是什么?
发布于 8 年前 作者 BorntoGO 25910 次浏览 来自 问答

按照 这里的解决办法 https://segmentfault.com/q/1010000005169531

  1. 在 index.html 引入了 js 文件.
  2. 在webpack.base.conf.js添加:externals: { ‘wx’: ‘jWeixin’ }
  3. import wx from ‘wx’ 的时候 提示 can not resoilve module ‘wx’

请问在 vue-cli 引入一个 js 文件(微信)并使用,最简单的方法是什么?还有第 2 步这里 每次都要自己进 js 文件找函数名吗?

8 回复

额。。我感觉 sf 那个答案并不好啊,它直接修改了 index.html。

应该用 https://github.com/webpack/script-loader ,在 js 的 main.js 最上面引入这个 jWeixin。

楼主你如果 3 出错了的话,那么看看你引入 js 的位置是不是比 webpack bundle 出来的位置更后了。应该放在那个 bundle 前面的。

贴一段我最近写的代码,你可以参考一下。 需要先执行npm install weixin-js-sdk --save-dev QQ20160618-0.png

@alsotang 谢谢,我看了一下没有用到 bundle ,后面引入 js 就用 srcipt-loader 了

@welchwsy 之前是这样写的,不过提示 TypeError: undefined is not an object (evaluating ‘wx.config’) ,刚才检查了一下发现是index.html里引入的全局js没注释掉,谢谢

@welchwsy 你好,再次打扰

ready: function () { wx.getLocation({ type: ‘wgs84’, success: function (res) { this.$http.get(rul).then(function(sucess)) }

请问我在 ready:function() 里请求了微信定位,在定位成功的回调里发起get请求 提示 Uncaught TypeError: Cannot read property ‘get’ of undefined ,正确的方式应该怎么写

@welchwsy

知道了,外边先

let _this = this

里边用的时候使用 _this.$http 参考链接 http://www.tuicool.com/articles/7nYnIba

@BorntoGO 恭喜你打开正确的解锁方式,很抱歉论坛回复不及时。有问题可以qq沟通

webpack.base.config.js resolve里面的alias里面添加一个 {“wx”:path.resolve(__dirname+’…/weixin.js’)

回到顶部