dsj2222222 2019-03-10 06:33
浏览 178

为什么facebookgo / inject为对象字段提供默认值?

I'd like to use facebookgo/inject, but I have a problem. I wrote this code:

package main

import (
    "github.com/facebookgo/inject"
)

type BookService struct {
    Database  Database  `inject:""`
}

type Database struct {
    ConnectionString string `inject:""`
}

func main() {
    var graph inject.Graph
    var service BookService
    _ = graph.Provide(&inject.Object{Value: &service}, &inject.Object{Value: Database{ConnectionString: "uri"}})
    _ = graph.Populate()

    println(service.Database.ConnectionString)
}

So, I expect that after injection the value of the field ConnectionString will be uri, but I get an empty string. What am I doing wrong?

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 ETLCloud 处理json多层级问题
    • ¥15 matlab中使用gurobi时报错
    • ¥15 这个主板怎么能扩出一两个sata口
    • ¥15 不是,这到底错哪儿了😭
    • ¥15 2020长安杯与连接网探
    • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
    • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
    • ¥15 可见光定位matlab仿真
    • ¥15 arduino 四自由度机械臂
    • ¥15 wordpress 产品图片 GIF 没法显示