Docxtemplater переменные ключи данных - PullRequest
0 голосов
/ 17 марта 2020

Мне нужно сгенерировать docx из набора данных, в котором есть имена переменных тегов:

{
    "month": "January",
    "year": "2020",
    "workers": {
        "John": [
            {
                "days": "12",
                "shop": "Shop #1"
            }
        ],
        "Bob": [
            {
                "days": "11",
                "shop": "Shop #1"
            },
            {
                "days": "4",
                "shop": "Shop #2"
            }
        ]
    }
}

Конечно, я не могу ни узнать ни число, ни имена рабочих.

Это может быть просто, но я не могу заставить код на стороне шаблона анализировать такие данные. Любые советы?

1 Ответ

0 голосов
/ 27 марта 2020

Вы можете использовать опцию пакета angular -expressions, см. Здесь о том, как ее установить:

https://docxtemplater.readthedocs.io/en/latest/angular_parse.html

Тогда вы можете сделать, в Ваш код:

expressions.filters.loopObject = function(input) {
    return Object.keys(input).map(function(key) {
             return { key , value : input[key]};
    });
}

И в своем шаблоне вы теперь можете написать:

{#workers | loopObject}
Name : {key}
Shop : {value.shop}
Days : {value.days}
{/}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...