Transpiller 和 Internet Explorer 8
Transpiller and Internet Explorer 8
我想在我的新项目中使用 BabelJS,但我有一个很大的要求:它必须在 IE8 上可执行。
问题:Babel 将 ES6 编译为 ES5。 IE8 对 ES5 的支持很差。
你知道 Babel 的替代品吗?这些替代品让我可以编写 "OOP" 代码,易于调试并且 "IE8 friendly"?
您可以使用 Typescript, it give you possibility to build EcmaScript 3 兼容性代码。
使用 TypeScript getting started 所需要做的就是在 Visual Studio(或 VSCode/Sublime/WebStorm)中创建简单的项目,然后像这样配置 tsconfig.json
{
"compilerOptions": {
"target": "es3",
"declaration": true,
"noImplicitAny": false,
"removeComments": true,
"noLib": false,
"emitDecoratorMetadata": true,
"sourceMap": true,
"listFiles": true,
"outDir": "",
"out": "./Compiled/myfile.js",
"experimentalDecorators": true
},
"files": [
"myfile.ts"
]
}
祝你好运!
相关资源
Babel 有一个 'loose' 模式用于它的几个转换,导致它们生成的代码使用更少的高级 ES5 特性,但代价是规范兼容性降低。一般来说,如果你启用它们,并避免像 getter 和 setter 这样的 ES5 特定语法,那么事情应该在 IE8 中工作。
the caveats page 中涵盖了大部分内容。
我想在我的新项目中使用 BabelJS,但我有一个很大的要求:它必须在 IE8 上可执行。
问题:Babel 将 ES6 编译为 ES5。 IE8 对 ES5 的支持很差。
你知道 Babel 的替代品吗?这些替代品让我可以编写 "OOP" 代码,易于调试并且 "IE8 friendly"?
您可以使用 Typescript, it give you possibility to build EcmaScript 3 兼容性代码。
使用 TypeScript getting started 所需要做的就是在 Visual Studio(或 VSCode/Sublime/WebStorm)中创建简单的项目,然后像这样配置 tsconfig.json
{
"compilerOptions": {
"target": "es3",
"declaration": true,
"noImplicitAny": false,
"removeComments": true,
"noLib": false,
"emitDecoratorMetadata": true,
"sourceMap": true,
"listFiles": true,
"outDir": "",
"out": "./Compiled/myfile.js",
"experimentalDecorators": true
},
"files": [
"myfile.ts"
]
}
祝你好运!
相关资源
Babel 有一个 'loose' 模式用于它的几个转换,导致它们生成的代码使用更少的高级 ES5 特性,但代价是规范兼容性降低。一般来说,如果你启用它们,并避免像 getter 和 setter 这样的 ES5 特定语法,那么事情应该在 IE8 中工作。
the caveats page 中涵盖了大部分内容。