HTML包含带有jsx,es2017标签和其他标签的脚本

时间:2018-12-07 02:53:00

标签: javascript reactjs jsx es2017

我具有以下Javascript(JSX,es2017等),当包含在页面上时,它们可以正常工作,但是当我从src标记中的URL获取内容时,它不再起作用。当源来自另一个文件时,如何包含以下内容?

src标记导入时,我无法加载Javascript:

<script src="...some_url..." type="text/jsx" data-presets="es2017,react,stage-0" data-plugins="transform-decorators-legacy"></script>

但是,在页面上包含以下内容时,它们会起作用。

<script type="text/jsx" data-presets="es2017,react,stage-0" data-plugins="transform-decorators-legacy">
function test(div_id) {
        const {LineChart, Line, XAxis, YAxis, CartesianGrid, Tooltip, Legend} = Recharts;
        const data = [
              {name: 'Page A', uv: 4000, pv: 2400, amt: 2400},
              {name: 'Page B', uv: 3000, pv: 1398, amt: 2210},
              {name: 'Page C', uv: 2000, pv: 9800, amt: 2290},
              {name: 'Page D', uv: 2780, pv: 3908, amt: 2000},
              {name: 'Page E', uv: 1890, pv: 4800, amt: 2181},
              {name: 'Page F', uv: 2390, pv: 3800, amt: 2500},
              {name: 'Page G', uv: 3490, pv: 4300, amt: 2100},
        ];
        const SimpleLineChart = React.createClass({
                render () {
                return (
                <LineChart width={600} height={300} data={data}
                    margin={{top: 5, right: 30, left: 20, bottom: 5}}>
               <XAxis dataKey="name"/>
               <YAxis/>
               <CartesianGrid strokeDasharray="3 3"/>
               <Tooltip/>
               <Legend />
               <Line type="monotone" dataKey="pv" stroke="#8884d8" activeDot={{r: 8}}/>
               <Line type="monotone" dataKey="uv" stroke="#82ca9d" />
              </LineChart>
            );
          }
        })

        ReactDOM.render(
                <SimpleLineChart />,
                document.getElementById(div_id)
        );
}
</script>

0 个答案:

没有答案