recherche

Maison  >  Questions et réponses  >  le corps du texte

laravel - la création d'un fournisseur dans larav5 rencontre le problème qu'il ne peut pas être instancié

Créez votre propre fournisseur de services dans larave5 Lors de l'exécution, un message d'erreur apparaît : La cible [AppIServicesTestServiceInterface] n'est pas instanciable. La structure du code est la suivante, veuillez aider à analyser la raison :

J'ai créé un répertoire nommé : IServices dans le répertoire de l'application pour stocker mes interfaces liées aux services. Les implémentations sont placées dans le répertoire Services.
Ensuite, les prestataires de services sont placés dans le répertoire Fournisseurs.
Après avoir terminé les étapes ci-dessus, enregistrez le fournisseur de services dans app.php.
Injectez-le ensuite via le constructeur dans HomeController, selon l'interface :

Lors de l'exécution, une erreur qui ne peut pas être instanciée a été signalée.
Je ne comprends pas, pourquoi ne peut-il pas être instancié ? J'ai déjà implémenté cette interface. Et également inscrit ? Quel lien clé est erroné ? Ou je l'ai raté ? J'espère que quelqu'un pourra me donner des conseils, merci !

伊谢尔伦伊谢尔伦2834 Il y a quelques jours629

répondre à tous(5)je répondrai

  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-05-16 16:58:43

    Publiez votre trace de bug et votre fournisseur de services et jetez-y un œil. Sinon, peu importe à quel point vous êtes bon, vous ne pourrez pas deviner où vous vous êtes trompé. Mon intuition me dit que vous n'avez probablement pas ajouté votre propre fournisseur dans app.php

    répondre
    0
  • 巴扎黑

    巴扎黑2017-05-16 16:58:43

    L'écriture est correcte, mais vous devez dire à ioc quelle est l'implémentation de l'interface que vous liez, en l4 c'est le cas bind 方法, l5还没细看,应该也有这个方法吧。否则 laravel 就不知道该注入什么,自然光一个接口是无法实例化的了。
    应该找一个地方写上类似 App::bind('TestServiceInterface', 'TestService')

    répondre
    0
  • phpcn_u1582

    phpcn_u15822017-05-16 16:58:43

    Je veux juste poser une petite question
    Les interfaces peuvent-elles être instanciées ?

    répondre
    0
  • PHPz

    PHPz2017-05-16 16:58:43

    Je ne sais pas pourquoi j'ai repassé le compositeur pour un projet, je viens de l'écrire une fois et c'était bien. Il se peut que quelque chose ait changé dans mon projet précédent au cours du processus d'apprentissage. Je n'ai pas trouvé exactement où se trouve l'erreur. Je regrette

    répondre
    0
  • 过去多啦不再A梦

    过去多啦不再A梦2017-05-16 16:58:43

    Frère se demande~, ce problème a-t-il été résolu ? Je suis sur le point de m'effondrer

    Après avoir moi-même cherché la réponse, il s'est avéré que le compositeur faisait quelque chose de bizarre. Il semble que nous devons comprendre coposer.json

    répondre
    0
  • Annulerrépondre