编译JS文件时出现Webpack问题

时间:2017-01-25 07:25:53

标签: javascript laravel webpack vue.js vue-component

我正在开发一个Laravel 5.3项目,在尝试为ES6添加一些配置之前,我一直在使用webpack没有问题。这些包括addind babel包到我的npm模块。它打破了我的代码,所以我恢复了所有的更改,但现在每当我更改JS文件并编译时,这一行被添加到最终的JS文件中,它会导致Vue实例未定义(无论何时我运行gulp都会显示该行是否更改文件)。我正在使用这个包laravel-elixir-vue-2和我收集的内容(虽然我可能错了)我需要更多的配置才能成功运行它,因为我已经使用它几个月了。

  

/ *** / function(module,exports){   124   125 eval(“var g; \ r \ n \ r \ n //这适用于非严格模式\ r \ n \ = =(function(){return this;})(); \ r \ n \ r \ n ntry {\ r \ n \ t //如果允许eval,则此方法有效(请参阅CSP)\ r \ n \ tg = g ||函数(\“返回此\”)()||(1,eval)(\“这个\“); \ r \ n} catch(e){\ r \ n \ t //如果窗口引用可用,则可以使用\ r \ n \ tif(typeof window === \”object \“)\ r \ n \ t \ t tg =窗口; \ r \ n} \ r \ n \ r \ n // g仍然可以是未定义的,但无需做任何事情...... \ r \ n //我们返回undefined,而不是没有,所以它是\ r \ n //更容易处理这种情况.if(!global){...} \ r \ n \ r \ nmodulele.exports = g; \ r \ n //#sourceMappingURL =数据:应用程序/ JSON;字符集= UTF-8; BASE64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiOC5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8od2VicGFjaykvYnVpbGRpbi9nbG9iYWwuanM / MzY5OCJdLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgZztcclxuXHJcbi8vIFRoaXMgd29ya3MgaW4gbm9uLXN0cmljdCBtb2RlXHJcbmcgPSAoZnVuY3Rpb24oKSB7IHJldHVybiB0aGlzOyB9KSgpO1xyXG5cclxudHJ5IHtcclxuXHQvLyBUaGlzIHdvcmtzIGlmIGV2YWwgaXMgYWxsb3dlZCAoc2VlIENTUClcclxuXHRnID0gZyB8fCBGdW5jdGlvbihcIn JldHVybiB0aGlzXCIpKCkgfHwgKDEsZXZhbCkoXCJ0aGlzXCIpO1xyXG59IGNhdGNoKGUpIHtcclxuXHQvLyBUaGlzIHdvcmtzIGlmIHRoZSB3aW5kb3cgcmVmZXJlbmNlIGlzIGF2YWlsYWJsZVxyXG5cdGlmKHR5cGVvZiB3aW5kb3cgPT09IFwib2JqZWN0XCIpXHJcblx0XHRnID0gd2luZG93O1xyXG59XHJcblxyXG4vLyBnIGNhbiBzdGlsbCBiZSB1bmRlZmluZWQsIGJ1dCBub3RoaW5nIHRvIGRvIGFib3V0IGl0Li4uXHJcbi8vIFdlIHJldHVybiB1bmRlZmluZWQsIGluc3RlYWQgb2Ygbm90aGluZyBoZXJlLCBzbyBpdCdzXHJcbi8vIGVhc2llciB0byBoYW5kbGUgdGhpcyBjYXNlLiBpZighZ2xvYmFsKSB7IC4uLn1cclxuXHJcbm1vZHVsZS5leHBvcnRzID0gZztcclxuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gKHdlYnBhY2spL2J1aWxkaW4vZ2xvYmFsLmpzXG4vLyBtb2R1bGUgaWQgPSA4XG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9" );   126 126

我甚至克隆了我的repo的先前版本,但该问题仍然存在。起初我认为我做过的一些PHPStorm设置导致了它,但后来我改变编辑器使用Atom但问题并没有消失。

更新 我按照这个link来安装babel,这样我就可以在我的.vue文件中使用ES6格式,但它破坏了我的webpack。我的代码中没有使用use strict。我在另一台电脑上安装了一个干净的git repo,它也提出了这个问题。它也适用于我在.vue之外使用vue的地方 部件

这是我的gulpfile.js

const elixir = require('laravel-elixir');

require('laravel-elixir-vue-2');


elixir(function(mix) {
    mix.sass('app.scss')
       .webpack('app.js');
});

如果需要进一步澄清,请在下方评论。

1 个答案:

答案 0 :(得分:0)

我仍然不知道是什么引入了Math.abs(double1 - double2) < epsilon,但最佳做法是将use strict与任何变量一起使用 undefined