我可以更改有关JHipsters'jhiTranslate'的字符串数组的串联字符吗?

如果我使用字符串数组进行翻译,例如i18n / en / home.json喜欢

     "primaryIntroduction": {
         "p1": [
             "Then Jenkins triggers a task to connect to the docker-server"," and calls some docker- and docker-compose commands to pull the new image"," and rebuilds and restarts the docker-container."
         ]
    }

jhipster将<p>串联在英语页面上,例如:

  

然后,詹金斯触发任务以连接到   docker-server,并调用一些docker-和docker-compose命令来   拉出新映像,然后重建并重新启动docker-container。

(注意逗号)

输入新行而不用引号结尾的行,json文件将停止。 没有换行符,较大的段落很难阅读和翻译。

我可以更改句子对自己的连接方式吗?例如,将数组的字符串放在一起时,使用空格而不是逗号吗?在Angular系统中为该串联字符引入一个控制变量是否有用?

wangkewei5724146 回答:我可以更改有关JHipsters'jhiTranslate'的字符串数组的串联字符吗?

这是正常现象,键p1的值是一个数组,而数组的字符串表示形式是逗号分隔的列表。有关详细信息,请参见https://github.com/ngx-translate/core/issues/339

此问题已通过支持JSON5格式在ngx-translate中解决,但不幸的是它尚未发布,似乎project is no longer actively maintained的最新发布日期是2018年11月。

因此,您可以尝试使用管道建议来支持数组,请参见https://github.com/ngx-translate/core/issues/339#issuecomment-360450296

,

要更改 jhipster 的 Angular Translation Concatenation(版本 6.10.5,请参阅 https://stackoverflow.com/a/34272375/7773582),我添加了

import { TranslateDefaultParser } from '@ngx-translate/core';
import { Injectable } from '@angular/core';

@Injectable()
export class TranslateAppParser extends TranslateDefaultParser {
  getValue(target: any,key: string): any {
    target = super.getValue(target,key);
    if (target instanceof Array) {
      target = target.join(' ');
    }
    return target;
  }
}

src/main/webapp/app/shared/translateappparser.module.ts

并添加

import {MissingTranslationHandler,TranslateLoader,TranslateModule,TranslateParser} from '@ngx-translate/core';
import { TranslateAppParser } from 'app/shared/translateappparser.module';

export function createTranslateParser():any {
  return new TranslateAppParser();
}

以及parser: { provide: TranslateParser,useFactory: createTranslateParser },

TranslateModule.forRoot({
      loader: {
        provide: TranslateLoader,useFactory: translatePartialLoader,deps: [HttpClient],},parser: { provide: TranslateParser,missingTranslationHandler: {
        provide: MissingTranslationHandler,useFactory: missingTranslationHandler,deps: [JhiConfigService],

在文件 src/main/webapp/app/core/core.module.ts

这正是 Gaël Marziou's answer 指向我的内容 - 今天我只需要在使用 jhipster --with-entities 进行 jhipster-Upgrade 时再次找到代码片段

本文链接:https://www.f2er.com/2962301.html

大家都在问