vuejs不支持ie678,因為Vue.js使用了IE8及其以下版本不能模擬的ECMAScript5特性,例如“Object.defineProperty()”和“Promise”。
本教程操作環(huán)境:windows7系統(tǒng)、vue2.9.6版,DELL G3電腦。
vue支持 IE8及其以下版本,即不支持ie6、ie7、ie8。
那為什么呢?原因:
Vue 使用了 IE8及其以下版本無法模擬的 ECMAScript 5 特性。換句話說:Vue支持所有兼容 ECMAScript 5 的瀏覽器。
但具體是哪些特性呢?
Object.defineProperty()
該方法允許精確添加或修改對象的屬性。一般情況下,我們?yōu)閷ο筇砑訉傩允峭ㄟ^賦值來創(chuàng)建并顯示在屬性枚舉中(for…in 或 Object.keys 方法),但這種方式添加的屬性值可以被改變,也可以被刪除。而使用 Object.defineProperty() 則允許改變這些額外細節(jié)的默認設(shè)置。例如,默認情況下,使用 Object.defineProperty() 增加的屬性值是不可改變的。
在 vue 源碼中搜索 “Object.defineProperty” :
可以看到有 5 個匹配的地方,也就是說 vue 中有 5 處使用了 “Object.defineProperty()”。
搜索的版本是: Vue.js v1.0.26
Object.defineProperty()的瀏覽器支持情況:
可以看出支持情況是 IE9 及以上。
vue 官方有對這個的說明:
Promise
Vue需要Promise的支持,IE8同樣不支持Promsie。