NervJS/nerv

使用 Nerv官方脚手架,打包运行(build)。报错

Closed this issue · 9 comments

SCRIPT438: 对象不支持“setState”属性或方法

yuche commented

你用的是这个吗?
https://github.com/NervJS/nerv-webpack-boilerplate

请问你还写了什么内容加了什么库吗?

用的就是这个脚手架,在ie9,或者ie10下,直接报错

yuche commented

先用 npm run build 之后再跑一次看看?

一样

是的,直接clone下来后,打包报错
ie9,ie10报错: 无法获取未定义或 null 引用的属性“data”

ie8报:对象不支持“setState”属性或方法

inier commented

是的,直接clone下来后,打包报错
ie9,ie10报错: 无法获取未定义或 null 引用的属性“data”

ie8报:对象不支持“setState”属性或方法

inier commented

直接clone下来后,打包报错
ie9,ie10报错: 无法获取未定义或 null 引用的属性“data”

ie8报:对象不支持“setState”属性或方法

如果你 采用的是npm,由于官方模版没有锁定 各个模块的版本,即没有package-lock.json
所以造成 ,npm或cnpm拉取到的库版本不同 。
解决方法:
第一种: 官方模版提供了yarn.lock ,所以 可以直接采用 yarn进行安装,该方法安装,node-sass会报错,可以采用cnpm方式安装node-sass,然后yarn build吧,好的,伙伴们,ie8就飞起来了。

第二种:建议官方提供package-lock.json。建议 各位用户在使用时,将适配的版本也提交给官方 ,官方整理为适配版本列表。ie8的确是个坑,单还有10%左右的用户,我们跳不过去,就只能勇敢地往下跳。

再次感谢Nerv团队的努力,32+

yuche commented

@inier
棒~

@Littly
yarn.lockpackage-lock.json 也 commit 上去咯~