Как составить один и тот же виджет несколько раз на странице - PullRequest
0 голосов
/ 13 июня 2019

У меня есть виджет сказать widget/userInfo

И, используя compose, я загружаю этот виджет несколько раз, как показано ниже:

index.js:

activate() {
  this.widget = {
        model: 'widgets/userinfo/viewmodel',
        view: 'widgets/userinfo/view.html',
        activationData: { userId: 1 }
    };
}

HTML:

<div>
    UserInfo: <div id="1" data-bind="compose: $root.userInfo"></div>
    UserInfo-2: <div id="2" data-bind="compose: $root.userInfo"></div>
</div>

Когда я создаю один и тот же виджет несколько раз, как указано выше, он загружается только для последнего элемента div, имеющего id = "2". Но я хочу загрузить его для обоих div

Я нашел его по этой проблеме, но не смог найти решение

1 Ответ

0 голосов
/ 25 июня 2019

Предполагая, что вы говорите о Durandal Widgets и виджет регистрируется с widget.registerKind('userinfo') при запуске приложения, я считаю, что вы должны использовать что-то вроде этого.

<div>
    UserInfo: <div id="1" data-bind="userinfo: {data: $root.userInfo}"></div>
    UserInfo-2: <div id="2" data-bind="userinfo: {data: $root.userInfo}"></div>
</div>
...