8

I am getting the following debug message:

"Update NavigationAuthority bound path tried to update multiple times per frame."

Does anyone know how to resolve the output message?

I can't find anything online about how to resolve this message, and it only started appearing when I added the following NavigationLink:

var body: some View {
    getViewFor(state: viewmodel.state)
        .navigationTitle("NYC schools")
        .toolbar{
            NavigationLink("Settings") {
                SettingsView()
            }
        }
}
burnsi
  • 6,194
  • 13
  • 17
  • 27
Romin
  • 121
  • 6
  • 3
    Without a [mre], it's probably not possible to solve this. This likely depends on `getViewFor(state:)`, which you haven't included. – jnpdx Jan 26 '23 at 20:55
  • 1
    Maybe this is useful: https://stackoverflow.com/questions/74433636/ – koen Jan 28 '23 at 19:23

1 Answers1

11

This message occurs, when you use a path-variable which is an ObservableObject (@Published).

For example:

NavigationStack(path: self.navigationPathModel.$mainMenuNavPath)

Either you live with the NavigationAuthority message, or you should change your View concept to @State variables, because these do not produce the message.

With iOS16.4 the "NavigationAuthority..." message is still present, but the message "NavigationRequestObserver tried to update multiple times per frame" at least got fixed.

Kuhlemann
  • 3,066
  • 3
  • 14
  • 41