ngx / translate - 只翻译字符串的一部分

时间:2017-10-18 14:13:19

标签: angular ngx-translate

我需要使用ngx/translate翻译来自服务器的字符串。

当我需要翻译字符串时它工作正常但在某些情况下我只需要翻译字符串的一部分。

例如: '你好Shay'或者'你好约翰'

我只需翻译'你好'并保留原样名称。 我试过了:

    #include <stdio.h>
    #include <string.h>

int main()
    {
        int n;
        char ch;
        printf("no of elements\n");
        scanf("%d ", &n ); //line 9
        //asking for number of pointer in array 
        char *a[n];
        puts("string");
        for (int i = 0; i < n; ++i){
            gets(a+i);
        }
        puts("-----");
        for (int j = 0; j < n; ++j){
            puts(a+j);
        }
        puts("-----");
        puts(a);
        puts("-----");
        puts(a+2);

        return 0;
    }

并在en.json文件中:     &#34;你好{var}&#34;:&#34;你好{var}&#34;

但没有成功。 任何想法如何做到这一点?

1 个答案:

答案 0 :(得分:2)

您正在寻找参数化翻译。您在翻译密钥中不需要该参数。试试这样:

en.json:

"hello_name": "Hello {{name}}"

控制器:

this.i18n.instant('hello_name', {name: 'Shay'});

或在模板中:

{{ 'hello_name' | translate: {name: 'Shay'} }}

https://github.com/ngx-translate/core#3-define-the-translations