小编Rya*_*yan的帖子

如何在.Net Core MVC中将csHtml传递给ViewComponent?

我想将 csHtml 传递给 ViewComponent,如下所示:

<vc:some-component title="Title" 
body="@Html.Raw("<div>this is a nice div, my name is @Model.Name</div>")">
</vc:some-component>
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,我想传递包含对变量或模型的引用的 HTML(这就是我将其称为 csHtml 而不仅仅是 Html 的原因)。

这是 ViewComponent 代码:

<div>
    <p>@Model.Title</p>
    @Model.Content
</div>
Run Code Online (Sandbox Code Playgroud)

这可能吗?我一直在搜索,但没有找到任何如何执行此操作的示例。


编辑:开始工作了!感谢大家的帮助。

以下是有关如何执行此操作的一些示例代码:

调用ViewComponent:

@{
    Func<dynamic, object> children =
    @<div>
        <p style="color: white">aaaa</p>
        <p style="color: white">bbbb</p>
        <p style="color: white">bbbb</p>
    </div>;
}

<vc:some-component body=@children>
</vc:some-component>
Run Code Online (Sandbox Code Playgroud)

查看组件内容:

@model SomeComponentModel

<div>
    @Model.Body("")
</div>
Run Code Online (Sandbox Code Playgroud)

asp.net .net-core asp.net-core asp.net-core-2.0 asp.net-core-viewcomponent

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

如何从非组件辅助函数访问redux的存储?

当我想从我的redux商店中删除一些东西时,我有一个帮助函数.但是,我需要能够访问函数内的当前存储,以确定下一步该做什么.这就是我想要做的事情:

export function deleteDocument (id) {
    this.props.dispatch(deleteShape({id}));

    const getStore = getStore(); //<-- I need something like this

    if(getStore.documents && !getStore.documents.find(doc => doc.selected)){
        this.props.dispatch(makeTopDocumentSelected());
    }
}
Run Code Online (Sandbox Code Playgroud)

我从一个组件中调用此函数并将"this"上下文传递给它,以便在您对此感到好奇时可以访问dispatch.但是,如果我尝试引用我传递的道具,它在"deleteShape"调用之后不会更新,因为此函数没有"连接"(缺少更好的词)到redux存储.所以我的问题是:如何从非组件函数访问当前的redux存储?谢谢

javascript reactjs react-redux

4
推荐指数
1
解决办法
3778
查看次数