使用 Angular 9 的 ngx-translate 在 IE 中不工作
ngx-translate with Angular 9 not working in IE
我们的应用程序无法在 IE 中运行,它仅显示编译错误 (SCRIPT1002),当导航到该行时,它显示 class TranslateLoader
.
我已经找到了一个类似的问题,不幸的是答案不起作用:
任何帮助都会很棒。非常感谢。
package.json
"@angular/core": "~9.1.6",
.....
"@ngx-translate/core": "^12.0.0",
"@ngx-translate/http-loader": "^5.0.0",
"classlist.js": "^1.1.20150312",
"web-animations-js": "^2.3.2",
浏览器列表
> 0.5%
last 2 versions
Firefox ESR
not dead
IE 9-11
tsconfig.json
...
"module": "es2015",
"downlevelIteration": true,
"experimentalDecorators": true,
"module": "esnext",
"moduleResolution": "node",
"importHelpers": true,
"target": "es5",
"typeRoots": [
"node_modules/@types"
],
"lib": [
"es2018",
"dom"
]
polyfills.ts
import 'classlist.js'; // Run `npm install --save classlist.js`.
import 'web-animations-js'; // Run `npm install --save web-animations-js`.
import 'zone.js/dist/zone'; // Included with Angular CLI.
我找到了 a similar thread and I followed the solution in it then it can work well in IE 11. I use ngx-translate like this simple sample。你可以参考我的文件:
package.json
...
"dependencies": {
"@angular/animations": "~9.1.0",
"@angular/common": "~9.1.0",
"@angular/compiler": "~9.1.0",
"@angular/core": "~9.1.0",
"@angular/forms": "~9.1.0",
"@angular/platform-browser": "~9.1.0",
"@angular/platform-browser-dynamic": "~9.1.0",
"@angular/router": "~9.1.0",
"@ngx-translate/core": "^11.0.1",
"@ngx-translate/http-loader": "^4.0.0",
"classlist.js": "^1.1.20150312",
"rxjs": "~6.5.4",
"tslib": "^1.10.0",
"web-animations-js": "^2.3.2",
"zone.js": "~0.10.2"
},
...
tsconfig.json
{
"compileOnSave": false,
"compilerOptions": {
"baseUrl": "./",
"outDir": "./dist/out-tsc",
"sourceMap": true,
"declaration": false,
"downlevelIteration": true,
"experimentalDecorators": true,
"module": "esnext",
"moduleResolution": "node",
"importHelpers": true,
"target": "es5",
"lib": [
"es2018",
"dom"
]
},
"angularCompilerOptions": {
"fullTemplateTypeCheck": true,
"strictInjectionParameters": true
}
}
IE 11 中的结果是这样的:
我们的应用程序无法在 IE 中运行,它仅显示编译错误 (SCRIPT1002),当导航到该行时,它显示 class TranslateLoader
.
我已经找到了一个类似的问题,不幸的是答案不起作用:
任何帮助都会很棒。非常感谢。
package.json
"@angular/core": "~9.1.6",
.....
"@ngx-translate/core": "^12.0.0",
"@ngx-translate/http-loader": "^5.0.0",
"classlist.js": "^1.1.20150312",
"web-animations-js": "^2.3.2",
浏览器列表
> 0.5%
last 2 versions
Firefox ESR
not dead
IE 9-11
tsconfig.json
...
"module": "es2015",
"downlevelIteration": true,
"experimentalDecorators": true,
"module": "esnext",
"moduleResolution": "node",
"importHelpers": true,
"target": "es5",
"typeRoots": [
"node_modules/@types"
],
"lib": [
"es2018",
"dom"
]
polyfills.ts
import 'classlist.js'; // Run `npm install --save classlist.js`.
import 'web-animations-js'; // Run `npm install --save web-animations-js`.
import 'zone.js/dist/zone'; // Included with Angular CLI.
我找到了 a similar thread and I followed the solution in it then it can work well in IE 11. I use ngx-translate like this simple sample。你可以参考我的文件:
package.json
...
"dependencies": {
"@angular/animations": "~9.1.0",
"@angular/common": "~9.1.0",
"@angular/compiler": "~9.1.0",
"@angular/core": "~9.1.0",
"@angular/forms": "~9.1.0",
"@angular/platform-browser": "~9.1.0",
"@angular/platform-browser-dynamic": "~9.1.0",
"@angular/router": "~9.1.0",
"@ngx-translate/core": "^11.0.1",
"@ngx-translate/http-loader": "^4.0.0",
"classlist.js": "^1.1.20150312",
"rxjs": "~6.5.4",
"tslib": "^1.10.0",
"web-animations-js": "^2.3.2",
"zone.js": "~0.10.2"
},
...
tsconfig.json
{
"compileOnSave": false,
"compilerOptions": {
"baseUrl": "./",
"outDir": "./dist/out-tsc",
"sourceMap": true,
"declaration": false,
"downlevelIteration": true,
"experimentalDecorators": true,
"module": "esnext",
"moduleResolution": "node",
"importHelpers": true,
"target": "es5",
"lib": [
"es2018",
"dom"
]
},
"angularCompilerOptions": {
"fullTemplateTypeCheck": true,
"strictInjectionParameters": true
}
}
IE 11 中的结果是这样的: