Vue.js语法错误(SCRIPT1003)IE11及更低版本

时间:2016-10-27 09:42:41

标签: javascript internet-explorer internet-explorer-11 vue.js vuex

当我在IE11或更低版本中尝试我的vue.js应用程序时,我得到错误SCRIPT1003除外:在控制台中指向routeContent。我的Snytax看起来像这样:

var store = new Vuex.Store({
    state: {
        routeContent: null
    },
    mutations: {
        routeContent(state, payload) {
            state.routeContent = payload
            document.title = payload.title
        }
    }
})

2 个答案:

答案 0 :(得分:2)

您尝试在routeContent - object method shorthand的定义中使用this isn't supported in Internet Explorer or Safari

您拥有的两个选项是开始使用Babel之类的转换器将现代JS语法转换为旧版浏览器可以理解的形式 - 或者,如果这太麻烦了,您可以只需切换回使用良好的老式函数语法:

var store = new Vuex.Store({
    state: {
        routeContent: null
    },
    mutations: {
        routeContent: function (state, payload) {
            state.routeContent = payload
            document.title = payload.title
        }
    }
})

答案 1 :(得分:1)

这是另一个类似的问题:javascript Ajax SCRIPT1003: Expected ':' in IE 11

我认为您可能需要执行以下操作:

mutations: {
    routeContent: function(state, payload) {  // making it obvious that this is a function
        state.routeContent = payload;
        document.title = payload.title;  // and also the semicolons
    }
}