小编use*_*352的帖子

如何在React功能组件中访问ag-Grid API(useState hook)?

在React 功能组件内访问 ag-Grid API的最佳方式是什么?

我必须使用 API 中的一些方法(getSelectedNodessetColumnDefs),因此我在事件处理程序中保存对 API 的引用(使用useState挂钩)onGridReady

onGridReady={params => {
    setGridApi(params.api);
}}
Run Code Online (Sandbox Code Playgroud)

然后我可以像这样调用 API:gridApi.getSelectedNodes()

我没有注意到这种方法有任何问题,但我想知道是否有更惯用的方法?

堆:

  • ag-grid-community 和 ag-grid-react 22.1.1
  • 反应16.12.0

function ag-grid ag-grid-react react-hooks

6
推荐指数
2
解决办法
3801
查看次数

在Bind <T>().ToMethod中解析单例

什么是Ninject 3相当于此代码:

Bind<ISession>().ToMethod(ctx => ctx.Kernel.Get<INHibernateSessionFactoryBuilder>()
            .GetSessionFactory()
            .OpenSession())
            .Using<OnePerRequestBehavior>();
Run Code Online (Sandbox Code Playgroud)

我知道我可以使用InRequestScope而不是Using<OnePerRequestBehavior>如何替换ctx.Kernel.Get<INHibernateSessionFactoryBuilder>?(INHibernateSessionFactoryBuilder是一个单身人士)

ninject asp.net-mvc-4

5
推荐指数
1
解决办法
435
查看次数

输入隐藏显示不正确的ID(Guid.Empty)

我想有一个输入(隐藏)字段,存储一些实体的Id ...

但是这段代码:

@Html.HiddenFor(model => model.Id)
Run Code Online (Sandbox Code Playgroud)

此HTML标记中的结果:

<input id="Id" name="Id" type="hidden" value="00000000-0000-0000-0000-000000000000" />
Run Code Online (Sandbox Code Playgroud)

这很奇怪,因为我很确定Model.Id != Guid.Empty.我可以通过注入@Model.IdHTML 来确认它.这很好用:

<input type="hidden" id="Id" name="Id" value="@Model.Id" />
Run Code Online (Sandbox Code Playgroud)

为什么View Engine决定将这些零而不是正确的ID?

编辑:我没有添加原始代码,因为它非常复杂,但这里是超级简单的示例,显示几乎相同的行为(它使用空字符串而不是输入值中的Guid.Empty):

视图:

@using MvcApplication4.Models
@model Foo

@using (Html.BeginForm())
{
    @Html.HiddenFor(model => model.Id)
    @Model.Id

    <input type="submit" value="ok" />
}
Run Code Online (Sandbox Code Playgroud)

控制器:

namespace MvcApplication4.Controllers
{
    public class HomeController : Controller
    {
        [HttpGet]
        public ActionResult Index()
        {
            Foo foo = new Foo();
            return View(foo);
        }  

        [HttpPost]
        public ActionResult Index(Foo foo)
        {
            foo.Id = Guid.NewGuid(); …
Run Code Online (Sandbox Code Playgroud)

model razor asp.net-mvc-4

5
推荐指数
1
解决办法
2406
查看次数