SwiftUI: How to change default implementation of modifier

I try to override default implementation of view modifier. (Actually it isn't override i know.)

Below code what i expect to work.
Code Block
struct ContentView: View {
var body: some View {
VStack {
MyCustomView()
}
.foregroundColor(.blue)
}
}
struct MyCustomView: View {
var body: some View {
Rectangle()
.foregroundColor(.yellow)
}
}

I want that MyCustomView's color in ContentView be blue.

I know propagated environment value and override that value can override. (foregroundColor) but i want to give default color or any proeprties.

The other example, custom view has complex view hierarchy. so when foregroundColor gave it, you might apply color theme to whole views based foreground color.

In case custom view has specific property, i can use @Environment, EnvironmentKey, extension EnvironmentValues.

So how can i reuse default view modifier.
SwiftUI: How to change default implementation of modifier
 
 
Q