Difference between creating ViewModifier and View extension in SwiftUI : <p>I'm trying to find out what is practical difference between these two approaches. For example:</p>

<pre><code>struct PrimaryLabel: ViewModifier {
    func body(content: Content) -&gt; some View {
        content
            .padding()
            .background(Color.black)
            .foregroundColor(Color.white)
            .font(.largeTitle)
            .cornerRadius(10)
    }
}

extension View {
    func makePrimaryLabel() -&gt; some View {
        self
            .padding()
            .background(Color.black)
            .foregroundColor(Color.white)
            .font(.largeTitle)
            .cornerRadius(10)
    }
}
</code></pre>

<p>Then we can use all of them following way:</p>

<pre><code>Text(tech.title)
    .modifier(PrimaryLabel())
Text(tech.title)
    .makePrimaryLabel()
ModifiedContent(
    content: Text(tech.title),
    modifier: PrimaryLabel()
)
</code></pre>
