автоматическое закрытие clr-stack-block - PullRequest
0 голосов
/ 10 января 2019
 <clr-stack-view>
  <clr-stack-header>Angular stack view</clr-stack-header>

  <clr-stack-block>
      <clr-stack-label>Label 1</clr-stack-label>
      <clr-stack-block>
        <clr-stack-label>Sub-label 1</clr-stack-label>
        <clr-stack-content>Sub-content 1</clr-stack-content>
    </clr-stack-block>
  </clr-stack-block>

  <clr-stack-block [clrSbExpanded]="true">
      <clr-stack-label>Label 2</clr-stack-label>
      <clr-stack-content>Content 2</clr-stack-content>
      <clr-stack-block>
          <clr-stack-label>Sub-label 1</clr-stack-label>
          <clr-stack-content>Sub-content 1</clr-stack-content>
      </clr-stack-block>
      <clr-stack-block>
          <clr-stack-label>Sub-label 2</clr-stack-label>
          <clr-stack-content>Sub-content 2</clr-stack-content>
      </clr-stack-block>
      <clr-stack-block>
          <clr-stack-label>Sub-label 3</clr-stack-label>
          <clr-stack-content>Sub-content 3</clr-stack-content>
      </clr-stack-block>
  </clr-stack-block>

  <clr-stack-block>
      <clr-stack-label>Label 3</clr-stack-label>
      <clr-stack-content>Content 3</clr-stack-content>
      <clr-stack-block>
          <clr-stack-label>Sub-label 4</clr-stack-label>
          <clr-stack-content>Sub-content 4</clr-stack-content>
      </clr-stack-block>
      <clr-stack-block>
          <clr-stack-label>Sub-label 5</clr-stack-label>
          <clr-stack-content>Sub-content 5</clr-stack-content>
      </clr-stack-block>
  </clr-stack-block>
</clr-stack-view>

когда я нажимаю на блок clr-stack, я хочу, чтобы все остальные блоки clr-stack были закрыты. Как я могу добиться этого простого поведения? Я думаю, что это должен быть автоматический способ, и мне не нужно получать это по коду

1 Ответ

0 голосов
/ 11 января 2019

Вы можете прослушивать изменения в расширенном состоянии, используя вывод (clrSbExpandedChange)="callback($event)". Затем, когда вы получите сообщение о том, что что-то закрыто, вы можете установить привязки ввода для [clrSbExpanded]="false", чтобы закрыть нужные блоки. Он не полностью автоматический, потому что вам придется самостоятельно обрабатывать изменения состояния, но его не так сложно отслеживать в зависимости от конкретных потребностей вашего проекта.

...