我有一个main函数,我在其中启动一个变量,一个客户端。例如:
func main() {
myClient := my.MustNewClient("localhost")
}
现在我想将此客户端传递给另一个包,但由于某种原因,我无法弄清楚如何执行此操作。我的包看起来像这样:
package rest
import (
"net/http"
"github.com/Sirupsen/logrus"
)
type AssetHandler struct {
mc my.Client
}
func (f AssetHandler) ServeHTTP(w http.ResponseWriter, r *http.Request) {
logrus.Info("bla")
// here I want to use the client
mc.SomeFunctionIntheClient()
}
所以我的问题是,我如何在我的包装中使用客户端(主要的)?
答案 0 :(得分:1)
在包休息中,你必须添加一个构造函数,如:
private void Button_Click_Clear(object sender, RoutedEventArgs e)
{
foreach (var series in columnChart.Series.OfType<Series>())
{
series.DataContext = null;
}
columnChart.Series.Clear();
dataToChart.Clear();
}
然后你必须从主函数中实例化处理程序。
否则,您必须创建一个存储全局变量的单独包。主包本身不能用于此,因为无法从其他地方访问它。