vue-cli2创建的项目,node_module编译错误

前段时间修改了一个tinymce文本编辑器的npm包,发布后有网友反馈包里面的代码报错,查看后发现当时写功能的时候使用了es6的...扩展运算符,然后那个网友使用的是vue-cli2的脚手架,所以第一反应就是进到build文件夹下修改webpack.base.conf.js如下:

{
        test: /\.js$/,
        loader: 'babel-loader',
        include: [resolve('src'), resolve('test'), resolve('node_modules/webpack-dev-server/client'), resolve('node_modules/tinymce-imageupload')]
      },

将npm包(tinymce-imageupload)手动include进来,原本以为问题就此解决了,不过运行起来依然报错

clipboard.png
感觉是手动include进去的配置修改没有生效,为了测试,专门把webpack.base.conf.js中resolve('src')配置删除

{
        test: /\.js$/,
        loader: 'babel-loader',
        include: [resolve('test'), resolve('node_modules/webpack-dev-server/client'), resolve('node_modules/tinymce-imageupload/js')]
      }

然后在src/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 ElementUI from 'element-ui'
import  "babel-polyfill"

import 'element-ui/lib/theme-chalk/index.css'
import './common/css/element-modify.css'
import './common/css/reset.css'

import App from './App'
import router from './router'
import store from './store'
import api from './api/jiekou'

Vue.config.productionTip = false
Vue.prototype.$api = api
Vue.use(ElementUI)

/* eslint-disable no-new */
new Vue({
  el: '#app',
  router,
    store,
  components: { App },
  template: '<App/>'
})
 // 扩展运算符测试代码
const options = {
  naem: 'Xx'
}
const {name} = {...options}

运行后项目正常报错了:

clipboard.png
将src的配置include回去后项目正常跑起来了:

clipboard.png
所以有个疑惑,为什么node_module的编译配置没有生效?求解答

阅读 1.9k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题