4
votes

Xcode 11 Beta 3, erreur de construction "Attribut inconnu 'État'", "Utilisation du type non déclaré" Vue "" etc.

Je construis une application avec la 2ème bêta de Xcode 11, en utilisant SwiftUI, et tout fonctionnait parfaitement, mais maintenant, avec la 3ème bêta, l'application n'est même pas construite. J'obtiens des erreurs telles que "Utilisation du type non déclaré" Vue "", "Attribut inconnu" État "", etc. Que puis-je faire? Le problème est-il dans mon code ou est-ce juste un bogue?

Le problème est lorsque j'essaie de créer l'application pour qu'elle s'exécute sur mon Mac (avec UIKit pour Mac)

struct ContentView : View {
    /*...*/
}

L'erreur est "Attribut inconnu" État ""

@State var score = 0

L'erreur est "Utilisation du type non déclaré" Vue ""


2 commentaires

Avez-vous importé le framework SwiftUI ?


@ SohilR.Memon oui, sinon cela ne fonctionnera pas non plus sur iOS.


4 Réponses :


5
votes

Ceci est extrait des notes de publication de Xcode 11 Beta 3 .

Problèmes connus

  • Xcode 11 ne prend pas en charge l'utilisation de SwiftUI dans une application iPad apportée à macOS. (41416222, 51201699)

J'ai téléchargé moi-même le Xcode 11 Beta 3 juste pour confirmer les erreurs que vous avez mentionnées, et j'ai eu les mêmes problèmes en essayant de créer un projet SwiftUI pour Mac.

Je suggérerais de revenir à l'utilisation de Xcode Beta 2 si possible. Malheureusement, Apple ne fournit pas de liens de téléchargement vers les versions bêta précédentes, nous espérons donc qu'une sauvegarde Time Machine ou une version bêta 2 est toujours installée sur votre ordinateur. Sinon, vous n'aurez peut-être pas de chance jusqu'à la sortie de la prochaine version bêta.


0 commentaires

3
votes

J'obtenais le même problème "Attribut inconnu 'État'" dans la bêta 5. Mais je faisais "@state" et non "@State". L'affaire compte. C'est difficile à remarquer car les deux sens sont indiqués en violet.


0 commentaires

5
votes

Vous avez le même problème sur Xcode 11.2. J'ai découvert que la raison était que quelque part dans le même module, j'ai déclaré l' protocol State {} . Cela rompt le compilateur sans aucune erreur raisonnable.


1 commentaires

Dans ce cas, vous pouvez simplement faire @ SwiftUI.State



0
votes

Au lieu de @main, veuillez remplacer @UIApplicationMain. J'ai joint des captures d'écran. https://prnt.sc/vimvwn


1 commentaires

Cela est également vrai pour les applications macOS. Si vous rencontrez l'erreur dans l' Unknown attribute 'Main' XCode 11 Unknown attribute 'Main' remplacez @Main par @NSApplicationMain . Problème différent mais même solution.