---
title: "environment(_:_:)"
framework: swiftui
role: symbol
role_heading: Instance Method
path: "swiftui/scene/environment(_:_:)"
---

# environment(_:_:)

Sets the environment value of the specified key path to the given value.

## Declaration

```swift
nonisolated func environment<V>(_ keyPath: WritableKeyPath<EnvironmentValues, V>, _ value: V) -> some Scene

```

## Parameters

- `keyPath`: A key path that indicates the property of the doc://com.apple.SwiftUI/documentation/SwiftUI/EnvironmentValues structure to update.
- `value`: The new value to set for the item specified by keyPath.

## Return Value

Return Value A view that has the given value set in its environment.

## Discussion

Discussion Use this modifier to set one of the writable properties of the EnvironmentValues structure, including custom values that you create. For example, you can create a custom environment key styleOverrides to set a value that represents style settings that for the entire app: WindowGroup {     ContentView() } .environment(\.styleOverrides, StyleOverrides()) You then read the value inside ContentView or one of its descendants using the Environment property wrapper: struct MyView: View {     @Environment(\.styleOverrides) var styleOverrides: StyleOverrides

var body: some View { ... } } This modifier affects the given scene, as well as that scene’s descendant views. It has no effect outside the view hierarchy on which you call it.

## See Also

### Modifying the environment of a scene

- [environment(_:)](swiftui/scene/environment(_:).md)
- [transformEnvironment(_:transform:)](swiftui/scene/transformenvironment(_:transform:).md)
