Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将值传递给绑定的React JS文件?_Javascript_Reactjs_Webpack - Fatal编程技术网

Javascript 将值传递给绑定的React JS文件?

Javascript 将值传递给绑定的React JS文件?,javascript,reactjs,webpack,Javascript,Reactjs,Webpack,我想知道是否可以将参数传递给react入口点 我的切入点如下所示: module.exports = { entry: "./js/components/Application.js", output: { path: "./dist", filename: "bundle.js" }, // ... } My Application.js: import React from 'react'; import ReactDOM f

我想知道是否可以将参数传递给react入口点

我的切入点如下所示:

module.exports = {
    entry: "./js/components/Application.js",
    output: {
        path: "./dist",
        filename: "bundle.js"
    },
    // ...
}
My Application.js:

import React from 'react';
import ReactDOM from 'react-dom';
import AnotherComponent from './AnotherComponent';

ReactDOM.render(<AnotherComponent />, document.getElementById('content'));
从“React”导入React;
从“react dom”导入react dom;
从“./AnotherComponent”导入另一个组件;
ReactDOM.render(,document.getElementById('content'));
不,我将我的应用程序与webpack捆绑,并将此捆绑包含在另一个应用程序中。此应用程序提供id为“content”的div:


我知道我可以做像这样的事情

<script src="bundle.js" myargument="somevalue" />

但是,如何将此值作为属性传递给react组件
另一个组件

怎么样

<script id="bundle" src="bundle.js" myargument="somevalue" />

然后

const myScript = document.getElementById('bundle');

ReactDOM.render(<AnotherComponent 
   myArgument = {myScript.getAttribute('myargument')}
/>, document.getElementById('content')

);
const myScript=document.getElementById('bundle');
ReactDOM.render(,document.getElementById('content'))
);

在ReactJS文件src/index.js中

import React from 'react';
import ReactDOM from 'react-dom';

window.MyReactApp = {
    init: (selector, myData) => {
        selector = selector.substring(1);
        const renderComponent = (<homeComponent mydata={myData} />);
        ReactDOM.render(renderComponent, document.getElementById(selector));
    },
};
从“React”导入React;
从“react dom”导入react dom;
window.MyReactApp={
初始化:(选择器,myData)=>{
选择器=选择器。子字符串(1);
常量renderComponent=();
render(renderComponent,document.getElementById(选择器));
},
};
现在将ReactJs应用程序加载到要加载的位置

<script type="text/javascript" src="bundle.min.js"></script>
<div id="load-myreactapp"></div>

<script type="text/javascript">
    const myData = {};
    MyReactApp.init('#load-myreactapp', myData);
</script>

常量myData={};
MyReactApp.init(“#加载MyReactApp”,myData);

这很有效,非常感谢!(我认为我实际上无法获得
脚本
并从中获取值)。这种方法非常有效,但不是一种完美的方法。见下面我的答案。
<script type="text/javascript" src="bundle.min.js"></script>
<div id="load-myreactapp"></div>

<script type="text/javascript">
    const myData = {};
    MyReactApp.init('#load-myreactapp', myData);
</script>