vue2项目 webpack 打包后的代码重复
找到问题了, vux 官方模板的问题
在 vux 下找到了 issues
https://github.com/airyland/v...
不过暂无解决办法
项目描述
项目是移动端 vue2 项目, 采用 vux 作为 ui 框架, 使用 vux 官方模板创建
使用了 vue-router, vuex
webpack 版本为 3.6+
问题描述
期初是发现在根组件 App.vue 的 export default 上面写 console.log 会输出2遍
然后打包, 查看打包后的代码, 发现了很奇怪的问题
App.vue 中部分代码如下图
打包好的 app.js 中部分代码如下图
发现这句 console.log 在打包后的文件中出现了2遍
而且 computed 跟 methods 中的代码也出现了2遍
我在自己另一个PC端的 vue2 + element-ui 项目, 是 webpack2的, 试了下并没有相同的问题
不知道是 webpack3 哪里配置有问题还是什么情况
最小化代码测试
删除了所有页面业务逻辑代码, 还是有问题, 感觉是 webpack 配置有问题, 跟写的页面代码关系不大
App.vue
<template>
<div class="mc-app" style="height:100%;">
已打开页面
</div>
</template>
<script>
console.log('enter')
export default {
components: {},
data() {
return {
}
}
}
</script>
main.js
// The Vue build version to load with the `import` command
// (runtime-only or standalone) has been set in webpack.base.conf with an alias.
import Vue from 'vue'
import App from './App'
Vue.config.productionTip = false
/* eslint-disable no-new */
new Vue({
render: h => h(App)
}).$mount('#app-box')
build后生成的app.js
webpackJsonp([1], {
NHnr: function(n, e, t) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
var r = t("IvJb");
console.log("enter");
console.log("enter");
var o = {
components: {},
data: function() {
return {}
}
},
c = function() {
var n = this,
e = n.$createElement;
return (n._self._c || e)("div", {
staticClass: "mc-app",
staticStyle: {
height: "100%"
}
},
[n._v("\n已打开页面\n")])
},
a = [],
l = {
render: c,
staticRenderFns: a
},
s = l,
i = t("C7Lr"),
u = i(o, s, !1, null, null, null),
p = u.exports;
r.a.config.productionTip = !1,
new r.a({
render: function(n) {
return n(p)
}
}).$mount("#app-box")
}
},
["NHnr"]);
//# sourceMappingURL=app.f04b99a5a5fe2fad1bb2.js.map
最小化后项目代码
链接: https://pan.baidu.com/s/1_5U8... 提取码: w36u
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
vux-loader的问题,我中午找了下,找到问题所在了
具体内容写在issues里面了
https://github.com/airyland/v...
需要作者修复下, 暂时临时改动了下 vux-loader 的代码解决了
这句写了嘛