未在IE11上加载错误“符号”的Vue.js未定义

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了未在IE11上加载错误“符号”的Vue.js未定义相关的知识,希望对你有一定的参考价值。

在我的webapp上使用Vue.js工作在大多数浏览器上,IE11除外。我尝试了默认的babel-preset-es2015,也尝试了babel-preset-es2015-ie,但没有运气:代码仍然没有在IE11上运行'符号'是未定义的错误。

.babelrc

{
  "presets": ["es2015"]  << also tried es2015-ie
}

的package.json

  "scripts": {
    "dev": "cross-env NODE_ENV=development webpack-dev-server --inline --hot --port 3000 --host 0.0.0.0",
    "build": "cross-env NODE_ENV=production webpack --progress --hide-modules"
  },
  "dependencies": {
    "bootstrap-loader": "^1.3.2",
    "jquery": "^3.1.1",
    "less": "^2.7.1",
    "less-loader": "^2.2.3",
    "vue": "^2.1.6"
  },
  "devDependencies": {
    "babel-core": "^6.20.0",
    "babel-loader": "^6.2.10",
    "babel-preset-es2015": "^6.18.0",
    "bootstrap-sass": "^3.3.7",
    "cross-env": "^1.0.6",
    "css-loader": "^0.23.1",
    "exports-loader": "^0.6.3",
    "extract-text-webpack-plugin": "^1.0.1",
    "file-loader": "^0.8.5",
    "imports-loader": "^0.7.0",
    "json-loader": "^0.5.4",
    "node-sass": "^4.0.0",
    "resolve-url-loader": "^1.6.1",
    "sass-loader": "^4.1.0",
    "style-loader": "^0.13.1",
    "url-loader": "^0.5.7",
    "vue-loader": "^9.8.0",
    "webpack": "^1.14.0",
    "webpack-dev-server": "^1.16.2"
  }
答案

正如@Leonid所指出的,我缺少浏览器 - 填充脚本,正如this answer所描述的那样。现在在IE11(和其他浏览器)上工作正常。

这是我做的:

npm install --save-dev babel-polyfill

webpack.config.js

module.exports = {
  entry: ['babel-polyfill', './src/main.js'],
  ....
  ....
}

以上是关于未在IE11上加载错误“符号”的Vue.js未定义的主要内容,如果未能解决你的问题,请参考以下文章

Vue.js:属性或方法未在实例上定义,但在渲染期间引用

ReactJS - SCRIPT1010:预期标识符 - 生产版本未在 IE11 上运行

错误:vue.js:634 [Vue 警告]:属性或方法“项目”未在实例上定义,但在渲染期间被引用

[Vue 警告]:属性或方法未在实例上定义,但在渲染期间引用

SVG 符号未在 Firefox 中显示

Vue js错误:属性或方法“smoothie”未在实例上定义,但在渲染期间引用