npm run build生成IE不兼容的JS

时间:2016-09-30 14:09:38

标签: javascript node.js npm

当我运行npm run build时,它会产生如下的JavaScript:

jQuery.extend({
    propFix: {
        for: "htmlFor",
        class: "className"
    },

这不能由IE的几个版本解释。它实际上应该产生以下内容:

jQuery.extend({
    propFix: {
        "for": "htmlFor",
        "class": "className"
    },

这是我的npm / node:

$ npm --version
2.14.13
$ node -v
v0.10.40

我使用的是RHEL6

package.json中的依赖项:

"scripts": {
  "prebuild": "npm i",
  "build": "./node_modules/.bin/gulp build",
  "local-deploy": "./node_modules/.bin/gulp local-deploy"
},
"devDependencies": {
  "gulp": "^3.8.10",
  "gulp-coffee": "^2.2.0",
  "gulp-concat": "^2.4.2",
  "gulp-less": "^3.0.0",
  "gulp-sourcemaps": "^1.3.0",
  "gulp-template-compile": "^0.2.1",
  "gulp-uglifyjs": "^0.5.0",
  "gulp-wrap": "^0.5.0",
  "less-plugin-clean-css": "^1.4.0",
  "underscore": "^1.6.0",
  "yargs": "^1.3.3"
}

1 个答案:

答案 0 :(得分:-1)

Npm对此毫无办法。问题在于jQuery和你的代码。

如果您使用的是jQuery 2或3,它将不适用于IE 6-8。

你可以find all jquery versions here

此外,如果您使用npm进行安装,请确保安装旧版本的jquery,例如:

npm install jquery@1.12.4 --save