webpack报错:Cannot assign to read only property 'exports' of object

这个倒霉错误在mac电脑上开发的时候非常顺利,可是用windows的时候就会报错。

 

百度查不到,google一查果然有。

 

原因是:The code above is ok. You can mix require and export. You can‘t mix import and module.exports.

 

也就是说,在webpack打包的时候,可以在js文件中混用require和export。但是不能混用import 以及module.exports。

 

于是查了一下代码,在自己的main.js中有这一段代码:

 

import selector from ‘../packages/selector‘;
import alert from ‘../packages/alert‘;
const components=[
    selector,
    alert,
]
const install=function(Vue,option={}){
    components.map(component => {
        Vue.component(component.name, component);
    })
    Vue.prototype.$alert=alert;
    Vue.prototype.$info=alert.error;
    Vue.prototype.$error=alert.error;
}
module.exports={
    version:‘0.0.1‘,
    install,
}

 这段代码就是在最开始使用了import语句,但是最后使用了module.exports语句。所以就报错了。

 

改正一下:

 

var selector = require(‘../packages/selector‘);
var alert=require(‘../packages/alert‘);
const components=[
    selector,
    alert,
]
const install=function(Vue,option={}){
    components.map(component => {
        Vue.component(component.name, component);
    })
    Vue.prototype.$alert=alert;
    Vue.prototype.$info=alert.error;
    Vue.prototype.$error=alert.error;
}
module.exports={
    version:‘0.0.1‘,
    install,
}

 搞定了。

 

所以提醒我,以后一定要配对使用require和module.exports以及import和export default。

 

不要混用,省得出问题。

 

修改时间 2018-05-15

真诚赞赏,手留余香
赞赏
随机推荐
windows+Apache下安装SSL证书「多虚拟主机」
PATCH和PUT方法的区别?
ffmpeg 下载加密的切片视频 m3u8
PHP PSR-4 Autoloader 自动加载(中文版)
Wordpress 学习笔记 3 数据库表结构
Javascipt数组
Windows下如何开启 apache的 apache-status监控功能
Apache 虚拟主机配置文件中限制 PHP 上传文件大小
平涂和厚涂的区别
企鹅直播品牌Logo提案,流程很好