diff --git a/frontend/src/pages/DataAnalysis/img/15.png b/frontend/src/pages/DataAnalysis/img/15.png
new file mode 100644
index 0000000..a470303
Binary files /dev/null and b/frontend/src/pages/DataAnalysis/img/15.png differ
diff --git a/frontend/src/pages/DataAnalysis/img/16.png b/frontend/src/pages/DataAnalysis/img/16.png
new file mode 100644
index 0000000..aba5f35
Binary files /dev/null and b/frontend/src/pages/DataAnalysis/img/16.png differ
diff --git a/frontend/src/pages/DataAnalysis/img/17.png b/frontend/src/pages/DataAnalysis/img/17.png
new file mode 100644
index 0000000..c71f900
Binary files /dev/null and b/frontend/src/pages/DataAnalysis/img/17.png differ
diff --git a/frontend/src/pages/Economics/index.jsx b/frontend/src/pages/Economics/index.jsx
new file mode 100644
index 0000000..a55cff3
--- /dev/null
+++ b/frontend/src/pages/Economics/index.jsx
@@ -0,0 +1,30 @@
+import React, { useEffect, useState, useRef } from 'react';
+
+function Economics() {
+ const iframeRef = useRef(null);
+
+ useEffect(() => {
+ if (iframeRef.current) {
+ iframeRef.current.contentWindow.addEventListener('message', (event) => {
+ console.log(11111, event.data);
+ });
+ }
+
+ return () => {
+ if (iframeRef.current) {
+ iframeRef.current.contentWindow.removeEventListener('message', (event) => {
+ console.log('Received message:', event.data);
+ });
+ }
+ };
+ }, []); // 空依赖数组确保只运行一次清理操作
+
+ return (
+
+ ;
+
+ )
+
+}
+
+export default Economics;
diff --git a/frontend/src/pages/Industry/index.jsx b/frontend/src/pages/Industry/index.jsx
new file mode 100644
index 0000000..b72e973
--- /dev/null
+++ b/frontend/src/pages/Industry/index.jsx
@@ -0,0 +1,30 @@
+import React, { useEffect, useState, useRef } from 'react';
+
+function Industry() {
+ const iframeRef = useRef(null);
+
+ useEffect(() => {
+ if (iframeRef.current) {
+ iframeRef.current.contentWindow.addEventListener('message', (event) => {
+ console.log(11111, event.data);
+ });
+ }
+
+ return () => {
+ if (iframeRef.current) {
+ iframeRef.current.contentWindow.removeEventListener('message', (event) => {
+ console.log('Received message:', event.data);
+ });
+ }
+ };
+ }, []); // 空依赖数组确保只运行一次清理操作
+
+ return (
+
+ ;
+
+ )
+
+}
+
+export default Industry;
diff --git a/frontend/src/pages/Report/index.jsx b/frontend/src/pages/Report/index.jsx
new file mode 100644
index 0000000..ec6d213
--- /dev/null
+++ b/frontend/src/pages/Report/index.jsx
@@ -0,0 +1,30 @@
+import React, { useEffect, useState, useRef } from 'react';
+
+function Report() {
+ const iframeRef = useRef(null);
+
+ useEffect(() => {
+ if (iframeRef.current) {
+ iframeRef.current.contentWindow.addEventListener('message', (event) => {
+ console.log(11111, event.data);
+ });
+ }
+
+ return () => {
+ if (iframeRef.current) {
+ iframeRef.current.contentWindow.removeEventListener('message', (event) => {
+ console.log('Received message:', event.data);
+ });
+ }
+ };
+ }, []); // 空依赖数组确保只运行一次清理操作
+
+ return (
+
+ ;
+
+ )
+
+}
+
+export default Report;
diff --git a/frontend/src/pages/Talents/index.jsx b/frontend/src/pages/Talents/index.jsx
new file mode 100644
index 0000000..41c6ada
--- /dev/null
+++ b/frontend/src/pages/Talents/index.jsx
@@ -0,0 +1,30 @@
+import React, { useEffect, useState, useRef } from 'react';
+
+function Talents() {
+ const iframeRef = useRef(null);
+
+ useEffect(() => {
+ if (iframeRef.current) {
+ iframeRef.current.contentWindow.addEventListener('message', (event) => {
+ console.log(11111, event.data);
+ });
+ }
+
+ return () => {
+ if (iframeRef.current) {
+ iframeRef.current.contentWindow.removeEventListener('message', (event) => {
+ console.log('Received message:', event.data);
+ });
+ }
+ };
+ }, []); // 空依赖数组确保只运行一次清理操作
+
+ return (
+
+ ;
+
+ )
+
+}
+
+export default Talents;
diff --git a/frontend/src/pages/TrendPrediction/index.jsx b/frontend/src/pages/TrendPrediction/index.jsx
new file mode 100644
index 0000000..ed29627
--- /dev/null
+++ b/frontend/src/pages/TrendPrediction/index.jsx
@@ -0,0 +1,30 @@
+import React, { useEffect, useState, useRef } from 'react';
+
+function TrendPrediction() {
+ const iframeRef = useRef(null);
+
+ useEffect(() => {
+ if (iframeRef.current) {
+ iframeRef.current.contentWindow.addEventListener('message', (event) => {
+ console.log(11111, event.data);
+ });
+ }
+
+ return () => {
+ if (iframeRef.current) {
+ iframeRef.current.contentWindow.removeEventListener('message', (event) => {
+ console.log('Received message:', event.data);
+ });
+ }
+ };
+ }, []); // 空依赖数组确保只运行一次清理操作
+
+ return (
+
+ ;
+
+ )
+
+}
+
+export default TrendPrediction;