Javascript 使用JSON而不是innerHTML或属性从Redux填充第三方元素

Javascript 使用JSON而不是innerHTML或属性从Redux填充第三方元素,javascript,redux,Javascript,Redux,我正在使用第三方库生成一个可排序的网格,该网格需要提供JSON数据,有没有一种方法可以将redux存储的一部分发送到这个非react网格,而不是作为react组件、属性或innerHtml,因为它需要JSON?挑战在于我的所有redux脚本都是模块,这是一个范围问题,因为在本例中,第三方元素包装在asp.net中,因此我无法将其公开给函数,尽管它可以调用javascript函数来获取数据,而且我需要能够订阅更改,到目前为止,这已经证明是不必要的困难。您可以调用store.getState来获取存

我正在使用第三方库生成一个可排序的网格,该网格需要提供JSON数据,有没有一种方法可以将redux存储的一部分发送到这个非react网格,而不是作为react组件、属性或innerHtml,因为它需要JSON?挑战在于我的所有redux脚本都是模块,这是一个范围问题,因为在本例中,第三方元素包装在asp.net中,因此我无法将其公开给函数,尽管它可以调用javascript函数来获取数据,而且我需要能够订阅更改,到目前为止,这已经证明是不必要的困难。

您可以调用store.getState来获取存储的当前状态

您可能希望将存储附加到窗口,以便在创建时为其提供全局范围

window.redux = { store }
或者,如果使用现代js,则在创建它的文件中创建一个包装器导出函数

export const getStore = () => store
这样你就可以

getStore().getState()
只需调用store.getState即可获取存储的当前状态

您可能希望将存储附加到窗口,以便在创建时为其提供全局范围

window.redux = { store }
或者,如果使用现代js,则在创建它的文件中创建一个包装器导出函数

export const getStore = () => store
这样你就可以

getStore().getState()

如果我没弄错你的问题,你在react应用程序中使用了第三方元素,它以JSON的形式获取数据?如果没有更多关于第三方库的详细信息,很难给出正确的答案,但我会尝试一下

无论这个库是什么,您都必须在某个点以某种方式渲染它。因为我们不知道您在使用什么,所以我将选择jQuery

假设以下用法

$("#grid").initializeGrid(data);
您可以预期react组件类似于

const GridWrapper = (props) => {
  const tableData = useSelector(selectTableJson);

  useEffect(() => {
    $("#grid").initializeGrid(data);
  }, [tableData]);

  return (
    <div id="grid" />
  );
}

基本上是从redux存储中选择数据,然后用该数据初始化第三方组件

如果我正确理解了您的问题,您是否在react应用程序中使用了某种第三方元素,该应用程序以JSON的形式获取数据?如果没有更多关于第三方库的详细信息,很难给出正确的答案,但我会尝试一下

无论这个库是什么,您都必须在某个点以某种方式渲染它。因为我们不知道您在使用什么,所以我将选择jQuery

假设以下用法

$("#grid").initializeGrid(data);
您可以预期react组件类似于

const GridWrapper = (props) => {
  const tableData = useSelector(selectTableJson);

  useEffect(() => {
    $("#grid").initializeGrid(data);
  }, [tableData]);

  return (
    <div id="grid" />
  );
}

基本上是从redux存储中选择数据,然后用该数据初始化第三方组件

你能举一些更具体的例子说明你的代码实际上是什么样子的吗?没有足够的信息来回答任何问题。@markerikson我实际上已经更改了问题以解决根本问题,而不是我现在正在处理的特定部分。您能给出一些实际的代码示例吗?我还是不明白你到底想做什么。Redux存储与innerHTML无关,我不知道你所说的所有Redux脚本都是模块是什么意思,我不知道这与将数据从Redux传递到某个第三方库有什么关系。你真的读过关于如何使用Redux的教程吗?@markerikson我读过。我的意思是,当您渲染时,您要么渲染反应组件,要么为web组件使用属性,要么只是将目标html的innerHtml设置为正确?有没有办法呈现JSON,并按照第三方对JSON的期望订阅呈现函数的更改?我不想添加特定的代码,因为这样我会得到一个特定的解决方案,而不是一个可以普遍应用于类似问题的解决方案,返回和使用JSON将是这个项目的一个重要部分。如果由我决定的话,我们还是会使用react,但事实并非如此。这个问题非常不清楚,需要代码示例来说明您试图实现的目标。所以问题应该是关于具体的编码问题。你能给出一些更具体的例子说明你的代码实际上是什么样子的吗?没有足够的信息来回答任何问题。@markerikson我实际上已经更改了问题以解决根本问题,而不是我现在正在处理的特定部分。您能给出一些实际的代码示例吗?我还是不明白你到底想做什么。Redux存储与innerHTML无关,我不知道你所说的所有Redux脚本都是模块是什么意思,我不知道这与将数据从Redux传递到某个第三方库有什么关系。你真的读过关于如何使用Redux的教程吗?@markerikson我读过。我的意思是,当您渲染时,您要么渲染反应组件,要么为web组件使用属性,要么只是将目标html的innerHtml设置为正确?有没有办法呈现JSON,并按照第三方对JSON的期望订阅呈现函数的更改?我不想添加特定的代码,因为这样我将得到一个特定的解决方案,而不是一个可以普遍应用于simil的解决方案
ar问题,返回和使用JSON将是这个项目的一个重要部分。如果由我决定的话,我们还是会使用react,但事实并非如此。这个问题非常不清楚,需要代码示例来说明您试图实现的目标。所以问题应该是关于特定的编码问题。