title: Shuffle inside a ForEach SwiftUI
body: <p>If a do a very simple ForEach loop I'm able to use a shuffle parameter to shuffle the things inside.</p>
  <p>Something linke this:</p>
  <pre><code> var plays: [Play] = playData
      
      var body: some View {
  NavigationView {
              ScrollView {
                  ForEach(plays.shuffled()) { item in
                      NavigationLink {
                          PlayDetailView(play: item)
                      } label: {
                          PlayCard(play: item)
                              .padding(.vertical, 7)
                      }
                  }
              }
  </code></pre>
  <p>But when I use an Environment object and call something different inside the loop, I don't have the option to shuffle things.</p>
  <p>Can someone point me in the right direction to <strong>shuffle the results of the following loops</strong>?</p>
  <pre><code>var body: some View {
          LazyVGrid(columns: [GridItem(.adaptive(minimum: 160), spacing: 15)]) {
              ForEach(0..&lt;modelData.stories.count, id: \.self) { item in
                  if modelData.stories[item].featured == true {
                      NavigationLink {
                          StoryDetails(story: modelData.stories[item])
                      } label: {
                          GeneralCard(story: modelData.stories[item])
                      }
                      
                  }
              }
          }
      }
  </code></pre>
  <p>Here is the ModelData:</p>
  <pre><code>struct Story: Hashable, Codable, Identifiable {
      var id: Int
      var title: String
      var description: String
      var featured: Bool
      var paid: Bool
      var featuredImage: String
      var bigImage: String
      var text: [String]
      var category: Category
  
  }
  </code></pre>