Koin范围有多个声明?

时间:2019-02-12 12:30:26

标签: android kotlin koin

根据本文https://insert-koin.io/docs/1.0/getting-started/android-scope/,我们可以为对象创建范围。这是一个示例。

scope("session") { MyScopePresenter(get())}

我的问题是,我们允许每个作用域添加多个定义吗?我觉得我们不是。任何地方都没有这样的例子。

    scope("session") {  
       Something() 
     AnotherThing()}

这不起作用。我只能在没有注入某些东西的情况下注入AnotherThing()。

为什么科因(Koin)只能为每个范围定义一个定义?

1 个答案:

答案 0 :(得分:1)

当您使用let mongoose = require('mongoose'); let app = require('./app'); let port = 3800; // Database connection mongoose.Promise = global.Promise; mongoose.connect('mongodb://localhost:9200/<name of your database>') .then(() => { console.log("Database conection Ok"); // Server creation app.listen(port, () => { console.log("Server running in http://localhost:3800"); }); }) .catch(err => console.log(err)); module { ... }single定义将声明添加到factory时,它们会在内部创建所谓的scope对象。这个bean定义对象将提供已声明对象的实例。每个BeanDefinition对象将处理一个声明。那意味着你应该改变

BeanDefinition

进入

scope("session") {  
   Something() 
   AnotherThing()
}

以使其正常工作。