在下一页:http://www.asp.net/signalr/overview/signalr-20/extensibility/dependency-injection
在底部附近(正好在文本"RegisterHubs.Start"下方),我试图使用Autofac重现一段Ninject代码.
到目前为止,我已经成功地让自己头痛,但没有多少.我已经搜索了Autofac wiki和网络以获得一些帮助.虽然,我相信我可能错过了一些信息.
更新:这是页面上的相关Ninject代码.
public static class RegisterHubs
{
public static void Start()
{
var kernel = new StandardKernel();
var resolver = new NinjectSignalRDependencyResolver(kernel);
kernel.Bind<IStockTicker>()
.To<Microsoft.AspNet.SignalR.StockTicker.StockTicker>()
.InSingletonScope();
kernel.Bind<IHubConnectionContext>().ToMethod(context =>
resolver.Resolve<IConnectionManager>().
GetHubContext<StockTickerHub>().Clients
).WhenInjectedInto<IStockTicker>();
var config = new HubConfiguration()
{
Resolver = resolver
};
App.MapSignalR(config);
}
}
Run Code Online (Sandbox Code Playgroud)
更新2:我还想添加试图编写的对象.
public class StockTickerHub : Hub
{
private readonly IStockTicker _stockTicker;
public StockTickerHub(IStockTicker stockTicker) { }
}
public class StockTicker
{
public StockTicker(IHubConnectionContext clients) { }
}
Run Code Online (Sandbox Code Playgroud) 我想知道如果组件的源是从 rest api 调用中提取的,是否可以渲染一个 react 组件。例如,如果组件存在于数据库中。
请不要简单地回答“我不会这样做”或“不推荐”。我知道这不是正常的方法。
该用例具有驻留在数据存储中并根据需要拉入的“小部件”列表。以及动态构建组件。理想情况下,这会在客户端运行时发生,但如果这是唯一的方法,我也可以切换到纯粹的服务器端反应。
注意:这与代码拆分不同。我尝试了各种调用“import(...)”的方法,但由于该组件来自rest api调用,因此我无法使其正常工作。如果有办法,请告诉我。
我看过一个类似的例子:https : //codepen.io/qborreda/pen/JZyEaj?editors=1010。但它有一些限制。即组件本身需要的任何额外导入。
function loadRemoteComponent(url){
return fetch(url)
.then(res=>res.text())
.then(source=>{
var exports = {}
function require(name){
if(name == 'react') return React
else throw `You can't use modules other than "react" in remote component.`
}
const transformedSource = Babel.transform(source, {
presets: ['react', 'es2015', 'stage-2']
}).code
eval(transformedSource)
return exports.__esModule ? exports.default : exports
})
}
loadRemoteComponent('https://codepen.io/tonytonyjan/pen/QEawag.js').then((Hello) => {
ReactDOM.render(<Hello/>, document.getElementById('hello'))
})Run Code Online (Sandbox Code Playgroud)
我原以为我可以存储组件的转译版本并将其拉入反应。但到目前为止,我还没有能够让它发挥作用。通常问题是组件不渲染或 React 抛出错误,因为它期望组件不是原始文本。
我还尝试在客户端上手动转译类似于 react 网站上的“入门”示例,方法是在客户端上包含 babel 独立处理器和 react 脚本(通过脚本标签)。 …
我有一个: List<Map<String, Long>> items = new ArrayList<>();
我想得到一个Map,其中键被分组,值是总和.
示例:列表
结果:地图
我知道如何以"长"方式执行此操作,但尝试使用java 8功能发现lambda/streaming/groupby方法.有什么想法吗?