2

我的应用程序是用 Typescript 在 Angular 7 中构建的。

我在打字稿文件中有以下代码。

this.confirmationDialogService.confirm(null, 'er du sikker på, at du vil gøre denne ændring', "Acceptere", "Afvise")

但是,当我发布它时,字符串没有在浏览器中正确编码和呈现。

this.confirmationDialogService.confirm(null, 'er du sikker p�, at du vil g�re denne �ndring', "Acceptere", "Afvise")

tsconfig.json

{
  "compileOnSave": false,
  "include": [
    "./src", "manager/IocDataMapperModule.cs", "../TV2.DataLayer/IUserSkillDataLayer.cs", "../TV2.DataLayer.Mongo/UserSkillDataLayer.cs"
  ],
  "compilerOptions": {
    "baseUrl": "./",
    "importHelpers": true,
    "outDir": "./scripts/out-tsc",
    "sourceMap": true,
    "declaration": false,
    "moduleResolution": "node",
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "target": "es5",
    "charset": "utf8",
    "typeRoots": [
      "node_modules/@types"
    ],
    "lib": [
      "es2017",
      "dom"
    ]
  }
}
4

3 回答 3

2

有几件事可能出错,需要检查:

  • 您的文本编辑器可能使用 ISO-8851-1 编码,但您的配置文件指示 Typescript 将其视为 Unicode。检查文本编辑器中的编码。

  • 您的 Web 服务器可能配置不正确。在浏览器中使用检查器,记录网络请求并检查主 HTML 文件是否使用 UTF-8。响应标头之一应该是:Content-Type: text/html;charset=UTF-8.

于 2019-09-05T11:54:20.077 回答
0

您可能需要从角度使用 i18n。这是官方文档:https://angular.io/guide/i18n,并将您的应用程序的语言环境设置为您需要的位置。

于 2019-09-05T09:09:39.790 回答
0

如果您无法控制 Web 服务器,则可以在标签中使用该charset属性。<script>

<script src="Script.js" charset="UTF-8"></script>

当我试图直接从file:URL 运行 HTML 和 JavaScript 时,我必须这样做。

于 2020-12-23T21:21:11.157 回答