Javascript 将值传递给绑定的React JS文件?
我想知道是否可以将参数传递给react入口点 我的切入点如下所示: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
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>