结构化数据建模/数据预览 新增报告生成功能
This commit is contained in:
Generated
+283
-190
@@ -2,9 +2,14 @@
|
||||
<project version="4">
|
||||
<component name="ChangeListManager">
|
||||
<list default="true" id="8d242b82-cb9f-402f-b127-e24c2f7034a5" name="Default Changelist" comment="">
|
||||
<change afterPath="$PROJECT_DIR$/src/views/nav1/Clean.vue" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/static/AMLlogo.png" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/package.json" beforeDir="false" afterPath="$PROJECT_DIR$/package.json" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/routes.js" beforeDir="false" afterPath="$PROJECT_DIR$/src/routes.js" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/views/Home.vue" beforeDir="false" afterPath="$PROJECT_DIR$/src/views/Home.vue" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/views/Login.vue" beforeDir="false" afterPath="$PROJECT_DIR$/src/views/Login.vue" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/views/nav1/Form.vue" beforeDir="false" afterPath="$PROJECT_DIR$/src/views/nav1/Form.vue" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/views/nav1/Form.vue" beforeDir="false" afterPath="$PROJECT_DIR$/src/views/nav1/MLmodel.vue" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/views/nav1/Table.vue" beforeDir="false" afterPath="$PROJECT_DIR$/src/views/nav1/Table.vue" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/views/nav1/user.vue" beforeDir="false" afterPath="$PROJECT_DIR$/src/views/nav1/user.vue" afterDir="false" />
|
||||
</list>
|
||||
@@ -28,30 +33,8 @@
|
||||
<expand />
|
||||
<select />
|
||||
</component>
|
||||
<component name="DockManager">
|
||||
<window id="1">
|
||||
<content type="file-editors">
|
||||
<state>
|
||||
<leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
|
||||
<file pinned="false" current-in-tab="true">
|
||||
<entry file="file://$PROJECT_DIR$/vue_study.md">
|
||||
<provider selected="true" editor-type-id="split-provider[text-editor;markdown-preview-editor]">
|
||||
<state split_layout="SPLIT">
|
||||
<first_editor relative-caret-position="56">
|
||||
<caret line="113" column="12" selection-start-line="113" selection-start-column="12" selection-end-line="113" selection-end-column="12" />
|
||||
</first_editor>
|
||||
<second_editor />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
</leaf>
|
||||
</state>
|
||||
</content>
|
||||
</window>
|
||||
</component>
|
||||
<component name="FileEditorManager">
|
||||
<splitter split-orientation="horizontal" split-proportion="0.41442156">
|
||||
<splitter split-orientation="horizontal" split-proportion="0.6565401">
|
||||
<split-first>
|
||||
<leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
|
||||
<file pinned="false" current-in-tab="false">
|
||||
@@ -75,27 +58,108 @@
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file pinned="false" current-in-tab="true">
|
||||
<entry file="file://$PROJECT_DIR$/src/views/nav1/Form.vue">
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/src/views/Login.vue">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="230">
|
||||
<caret line="154" column="23" lean-forward="true" selection-start-line="154" selection-start-column="23" selection-end-line="154" selection-end-column="23" />
|
||||
<state relative-caret-position="1104">
|
||||
<caret line="48" selection-start-line="48" selection-end-line="48" />
|
||||
<folding>
|
||||
<element signature="n#style#0;n#a#0;n#el-form#0;n#template#0;n#!!top" expanded="true" />
|
||||
<element signature="n#style#0;n#el-form-item#2;n#el-form#0;n#template#0;n#!!top" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/src/views/Main.vue">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="253">
|
||||
<caret line="11" selection-start-line="11" selection-end-line="11" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/src/views/Home.vue">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="483">
|
||||
<caret line="21" column="72" selection-start-line="21" selection-start-column="72" selection-end-line="21" selection-end-column="72" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file pinned="false" current-in-tab="true">
|
||||
<entry file="file://$PROJECT_DIR$/src/views/nav1/user.vue">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="109">
|
||||
<caret line="94" column="44" lean-forward="true" selection-start-line="94" selection-start-column="44" selection-end-line="94" selection-end-column="44" />
|
||||
<folding>
|
||||
<element signature="n#style#0;n#el-table#0;n#template#0;n#section#0;n#template#0;n#!!top" expanded="true" />
|
||||
<element signature="n#style#0;n#iframe#0;n#!!top" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/LICENSE">
|
||||
<provider selected="true" editor-type-id="text-editor" />
|
||||
</entry>
|
||||
</file>
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/fesfe.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="332">
|
||||
<caret line="45" selection-start-line="45" selection-end-line="52" selection-end-column="50" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/src/views/nav1/MLmodel.vue">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="3220">
|
||||
<caret line="140" column="34" selection-start-line="140" selection-start-column="34" selection-end-line="140" selection-end-column="34" />
|
||||
<folding>
|
||||
<element signature="n#style#0;n#el-form#0;n#template#0;n#!!top" expanded="true" />
|
||||
<element signature="n#style#0;n#el-col#0;n#el-dialog#0;n#el-form#0;n#template#0;n#!!top" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/src/views/nav1/Clean.vue">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="253">
|
||||
<caret line="11" column="16" selection-start-line="11" selection-start-column="16" selection-end-line="11" selection-end-column="16" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
</leaf>
|
||||
</split-first>
|
||||
<split-second>
|
||||
<leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/src/views/nav1/MLmodel.vue">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state>
|
||||
<caret line="79" column="3" selection-start-line="79" selection-start-column="3" selection-end-line="85" selection-end-column="21" />
|
||||
<folding>
|
||||
<element signature="n#style#0;n#el-form#0;n#template#0;n#!!top" expanded="true" />
|
||||
<element signature="n#style#0;n#el-col#0;n#el-dialog#0;n#el-form#0;n#template#0;n#!!top" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file pinned="false" current-in-tab="true">
|
||||
<entry file="file://$PROJECT_DIR$/src/views/nav1/Table.vue">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="323">
|
||||
<caret line="96" column="95" selection-start-line="96" selection-start-column="95" selection-end-line="96" selection-end-column="95" />
|
||||
<state relative-caret-position="895">
|
||||
<caret line="104" selection-start-line="103" selection-end-line="104" />
|
||||
<folding>
|
||||
<element signature="n#style#0;n#span#0;n#section#0;n#template#0;n#!!top" expanded="true" />
|
||||
<element signature="n#style#0;n#el-table#0;n#section#0;n#template#0;n#!!top" expanded="true" />
|
||||
@@ -104,71 +168,19 @@
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file pinned="false" current-in-tab="true">
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/src/views/nav1/user.vue">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="201">
|
||||
<caret line="60" column="75" selection-start-line="60" selection-start-column="75" selection-end-line="60" selection-end-column="75" />
|
||||
<state relative-caret-position="-23">
|
||||
<caret line="5" column="56" selection-start-line="5" selection-start-column="56" selection-end-line="5" selection-end-column="56" />
|
||||
<folding>
|
||||
<element signature="n#style#0;n#el-table#0;n#template#0;n#section#0;n#template#0;n#!!top" expanded="true" />
|
||||
<element signature="n#style#0;n#iframe#0;n#!!top" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/config/index.js">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="782">
|
||||
<caret line="34" column="20" selection-start-line="34" selection-start-column="20" selection-end-line="34" selection-end-column="20" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/src/views/Home.vue">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="966">
|
||||
<caret line="75" column="16" selection-start-line="75" selection-start-column="16" selection-end-line="75" selection-end-column="16" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/src/views/Login.vue">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="434">
|
||||
<caret line="64" column="32" selection-start-line="64" selection-start-column="32" selection-end-line="64" selection-end-column="32" />
|
||||
<folding>
|
||||
<element signature="n#style#0;n#a#0;n#el-form#0;n#template#0;n#!!top" expanded="true" />
|
||||
<element signature="n#style#0;n#el-form-item#2;n#el-form#0;n#template#0;n#!!top" expanded="true" />
|
||||
<element signature="n#el-form-item#2;n#el-form#0;n#template#0;n#!!top" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/src/routes.js">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="1035">
|
||||
<caret line="55" column="19" selection-start-line="55" selection-start-column="19" selection-end-line="55" selection-end-column="19" />
|
||||
<folding>
|
||||
<element signature="e#0#37#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/src/api/api.js">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="460">
|
||||
<caret line="20" column="34" selection-start-line="8" selection-end-line="9" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
</leaf>
|
||||
</split-second>
|
||||
</splitter>
|
||||
@@ -177,6 +189,7 @@
|
||||
<option name="RECENT_TEMPLATES">
|
||||
<list>
|
||||
<option value="Vue Single File Component" />
|
||||
<option value="Python Script" />
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
@@ -184,7 +197,18 @@
|
||||
<findStrings>
|
||||
<find>查询</find>
|
||||
<find>导航</find>
|
||||
<find>mod</find>
|
||||
<find>mode</find>
|
||||
<find>v-show</find>
|
||||
<find>img</find>
|
||||
<find>系统</find>
|
||||
<find>icon</find>
|
||||
<find>ele</find>
|
||||
<find>Form</find>
|
||||
</findStrings>
|
||||
<replaceStrings>
|
||||
<replace>MLmodel</replace>
|
||||
</replaceStrings>
|
||||
</component>
|
||||
<component name="Git.Settings">
|
||||
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
|
||||
@@ -202,29 +226,31 @@
|
||||
<option value="$PROJECT_DIR$/config/index.js" />
|
||||
<option value="$PROJECT_DIR$/src/api/api.js" />
|
||||
<option value="$PROJECT_DIR$/src/App.vue" />
|
||||
<option value="$PROJECT_DIR$/src/routes.js" />
|
||||
<option value="$PROJECT_DIR$/src/views/Home.vue" />
|
||||
<option value="$PROJECT_DIR$/vue_study.md" />
|
||||
<option value="$PROJECT_DIR$/src/views/nav1/dailog.vue" />
|
||||
<option value="$PROJECT_DIR$/src/views/Login.vue" />
|
||||
<option value="$PROJECT_DIR$/src/views/nav1/Table.vue" />
|
||||
<option value="$PROJECT_DIR$/package.json" />
|
||||
<option value="$PROJECT_DIR$/src/views/Home.vue" />
|
||||
<option value="$PROJECT_DIR$/src/views/Login.vue" />
|
||||
<option value="$PROJECT_DIR$/src/views/nav1/Form.vue" />
|
||||
<option value="$PROJECT_DIR$/src/routes.js" />
|
||||
<option value="$PROJECT_DIR$/src/views/nav1/Clean.vue" />
|
||||
<option value="$PROJECT_DIR$/src/views/nav1/MLmodel.vue" />
|
||||
<option value="$PROJECT_DIR$/fesfe.py" />
|
||||
<option value="$PROJECT_DIR$/src/views/nav1/user.vue" />
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="ProjectFrameBounds" extendedState="6">
|
||||
<option name="x" value="-268" />
|
||||
<option name="y" value="27" />
|
||||
<option name="width" value="1938" />
|
||||
<option name="height" value="1048" />
|
||||
<component name="ProjectFrameBounds">
|
||||
<option name="x" value="-8" />
|
||||
<option name="width" value="1933" />
|
||||
<option name="height" value="1038" />
|
||||
</component>
|
||||
<component name="ProjectView">
|
||||
<navigator proportions="" version="1">
|
||||
<foldersAlwaysOnTop value="true" />
|
||||
</navigator>
|
||||
<panes>
|
||||
<pane id="Scope" />
|
||||
<pane id="ProjectPane">
|
||||
<subPane>
|
||||
<expand>
|
||||
@@ -235,31 +261,19 @@
|
||||
<path>
|
||||
<item name="AML-frontend" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="AML_frontend" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="src" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="AML-frontend" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="AML_frontend" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="src" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="views" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="AML-frontend" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="AML_frontend" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="src" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="views" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="nav1" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="static" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
</expand>
|
||||
<select />
|
||||
</subPane>
|
||||
</pane>
|
||||
<pane id="Scope" />
|
||||
</panes>
|
||||
</component>
|
||||
<component name="PropertiesComponent">
|
||||
<property name="SHARE_PROJECT_CONFIGURATION_FILES" value="true" />
|
||||
<property name="WebServerToolWindowFactoryState" value="false" />
|
||||
<property name="last_opened_file_path" value="$PROJECT_DIR$/Test_Dataset" />
|
||||
<property name="last_opened_file_path" value="$PROJECT_DIR$/static" />
|
||||
<property name="node.js.detected.package.eslint" value="true" />
|
||||
<property name="node.js.detected.package.tslint" value="true" />
|
||||
<property name="node.js.path.for.package.eslint" value="project" />
|
||||
@@ -274,9 +288,12 @@
|
||||
</component>
|
||||
<component name="RecentsManager">
|
||||
<key name="MoveFile.RECENT_KEYS">
|
||||
<recent name="E:\study\项目\AML_frontend\static" />
|
||||
<recent name="E:\study\项目\AML_frontend\src\assets" />
|
||||
<recent name="E:\study\项目\AML_frontend\Test_Dataset" />
|
||||
</key>
|
||||
<key name="CopyFile.RECENT_KEYS">
|
||||
<recent name="E:\study\项目\AML_frontend\static" />
|
||||
<recent name="E:\study\项目\AML_frontend\Test_Dataset" />
|
||||
<recent name="E:\study\项目\AML_frontend" />
|
||||
</key>
|
||||
@@ -330,7 +347,17 @@
|
||||
<workItem from="1613193364112" duration="15888000" />
|
||||
<workItem from="1613276072538" duration="27499000" />
|
||||
<workItem from="1613365982541" duration="40722000" />
|
||||
<workItem from="1613567554397" duration="3910000" />
|
||||
<workItem from="1613567554397" duration="4149000" />
|
||||
<workItem from="1613618107192" duration="19458000" />
|
||||
<workItem from="1613707910563" duration="18185000" />
|
||||
<workItem from="1613913711701" duration="1211000" />
|
||||
<workItem from="1614066878978" duration="852000" />
|
||||
<workItem from="1614263716698" duration="2323000" />
|
||||
<workItem from="1614308683158" duration="6938000" />
|
||||
<workItem from="1614862502603" duration="1191000" />
|
||||
<workItem from="1614936442788" duration="10786000" />
|
||||
<workItem from="1615182490589" duration="591000" />
|
||||
<workItem from="1615783114596" duration="8893000" />
|
||||
</task>
|
||||
<task id="LOCAL-00001" summary="自动机器学习前端组件">
|
||||
<created>1601387458948</created>
|
||||
@@ -374,18 +401,25 @@
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1613465088906</updated>
|
||||
</task>
|
||||
<option name="localTasksCounter" value="7" />
|
||||
<task id="LOCAL-00007" summary="过渡动画,数据集列表session存储">
|
||||
<created>1613577068786</created>
|
||||
<option name="number" value="00007" />
|
||||
<option name="presentableId" value="LOCAL-00007" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1613577068786</updated>
|
||||
</task>
|
||||
<option name="localTasksCounter" value="8" />
|
||||
<servers />
|
||||
</component>
|
||||
<component name="TimeTrackingManager">
|
||||
<option name="totallyTimeSpent" value="150579000" />
|
||||
<option name="totallyTimeSpent" value="221246000" />
|
||||
</component>
|
||||
<component name="ToolWindowManager">
|
||||
<frame x="-7" y="-7" width="1550" height="838" extended-state="6" />
|
||||
<frame x="-6" y="0" width="1546" height="830" extended-state="0" />
|
||||
<editor active="true" />
|
||||
<layout>
|
||||
<window_info content_ui="combo" id="Project" order="0" sideWeight="0.49325627" visible="true" weight="0.1541555" />
|
||||
<window_info id="Structure" order="1" sideWeight="0.5067437" side_tool="true" visible="true" weight="0.1541555" />
|
||||
<window_info active="true" content_ui="combo" id="Project" order="0" sideWeight="0.44071588" visible="true" weight="0.20362903" />
|
||||
<window_info id="Structure" order="1" sideWeight="0.5592841" side_tool="true" visible="true" weight="0.20362903" />
|
||||
<window_info id="Favorites" order="2" side_tool="true" />
|
||||
<window_info anchor="bottom" id="Message" order="0" />
|
||||
<window_info anchor="bottom" id="Find" order="1" />
|
||||
@@ -398,9 +432,9 @@
|
||||
<window_info anchor="bottom" id="Version Control" order="8" weight="0.32844576" />
|
||||
<window_info anchor="bottom" id="Database Changes" order="9" />
|
||||
<window_info anchor="bottom" id="Event Log" order="10" side_tool="true" />
|
||||
<window_info active="true" anchor="bottom" id="Terminal" order="11" visible="true" weight="0.23900293" />
|
||||
<window_info anchor="bottom" id="Terminal" order="11" visible="true" weight="0.33679524" />
|
||||
<window_info anchor="bottom" id="Python Console" order="12" weight="0.38709676" />
|
||||
<window_info anchor="bottom" id="TypeScript" order="13" />
|
||||
<window_info anchor="bottom" id="TypeScript" order="13" weight="0.32991204" />
|
||||
<window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" />
|
||||
<window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
|
||||
<window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
|
||||
@@ -408,8 +442,8 @@
|
||||
<window_info anchor="right" id="Database" order="4" />
|
||||
</layout>
|
||||
<layout-to-restore>
|
||||
<window_info content_ui="combo" id="Project" order="0" sideWeight="0.4979757" visible="true" weight="0.103217155" />
|
||||
<window_info id="Structure" order="1" sideWeight="0.5020243" side_tool="true" weight="0.18096514" />
|
||||
<window_info content_ui="combo" id="Project" order="0" sideWeight="0.6086956" visible="true" weight="0.20509383" />
|
||||
<window_info active="true" id="Structure" order="1" sideWeight="0.39130434" side_tool="true" visible="true" weight="0.20509383" />
|
||||
<window_info id="Favorites" order="2" side_tool="true" />
|
||||
<window_info anchor="bottom" id="Message" order="0" />
|
||||
<window_info anchor="bottom" id="Find" order="1" />
|
||||
@@ -422,8 +456,9 @@
|
||||
<window_info anchor="bottom" id="Version Control" order="8" weight="0.32844576" />
|
||||
<window_info anchor="bottom" id="Database Changes" order="9" />
|
||||
<window_info anchor="bottom" id="Event Log" order="10" side_tool="true" />
|
||||
<window_info active="true" anchor="bottom" id="Terminal" order="11" visible="true" weight="0.27419356" />
|
||||
<window_info anchor="bottom" id="Python Console" order="12" weight="0.22727273" />
|
||||
<window_info anchor="bottom" id="Terminal" order="11" visible="true" weight="0.29178885" />
|
||||
<window_info anchor="bottom" id="Python Console" order="12" weight="0.38709676" />
|
||||
<window_info anchor="bottom" id="TypeScript" order="13" weight="0.32991204" />
|
||||
<window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" />
|
||||
<window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
|
||||
<window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
|
||||
@@ -440,13 +475,14 @@
|
||||
<MESSAGE value="修改main.js" />
|
||||
<MESSAGE value="数据集上传,数据预览" />
|
||||
<MESSAGE value="数据建模页面响应功能完成" />
|
||||
<option name="LAST_COMMIT_MESSAGE" value="数据建模页面响应功能完成" />
|
||||
<MESSAGE value="过渡动画,数据集列表session存储" />
|
||||
<option name="LAST_COMMIT_MESSAGE" value="过渡动画,数据集列表session存储" />
|
||||
</component>
|
||||
<component name="XDebuggerManager">
|
||||
<breakpoint-manager>
|
||||
<breakpoints>
|
||||
<line-breakpoint enabled="true" type="javascript">
|
||||
<url>file://$PROJECT_DIR$/src/views/nav1/Form.vue</url>
|
||||
<url>file://$PROJECT_DIR$/src/views/nav1/MLmodel.vue</url>
|
||||
<line>4</line>
|
||||
<option name="timeStamp" value="2" />
|
||||
</line-breakpoint>
|
||||
@@ -455,10 +491,10 @@
|
||||
</component>
|
||||
<component name="editorHistoryManager">
|
||||
<entry file="file://$PROJECT_DIR$/Test_Dataset/day.csv">
|
||||
<provider selected="true" editor-type-id="csv-text-editor" />
|
||||
<provider editor-type-id="csv-table-editor">
|
||||
<state showInfoPanel="true" fixedHeaders="false" rowLines="3" />
|
||||
</provider>
|
||||
<provider selected="true" editor-type-id="csv-text-editor" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/styles/vars.scss">
|
||||
<provider selected="true" editor-type-id="text-editor" />
|
||||
@@ -539,13 +575,6 @@
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/dist/static/js/vendor.0f1354d86ff9bd2ab3e5.js">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="15456">
|
||||
<caret line="38" column="63098" selection-start-line="38" selection-start-column="63098" selection-end-line="38" selection-end-column="63098" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/common/js/util.js">
|
||||
<provider selected="true" editor-type-id="text-editor" />
|
||||
</entry>
|
||||
@@ -556,14 +585,85 @@
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/views/Main.vue">
|
||||
<entry file="file://$PROJECT_DIR$/src/views/nav1/dailog.vue" />
|
||||
<entry file="file://$PROJECT_DIR$/node_modules/_js-base64@3.6.0@js-base64/base64.d.ts">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="253">
|
||||
<caret line="11" selection-start-line="11" selection-end-line="11" />
|
||||
<state relative-caret-position="163">
|
||||
<caret line="92" column="14" selection-start-line="92" selection-start-column="14" selection-end-line="92" selection-end-column="14" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/dist/static/js/vendor.0f1354d86ff9bd2ab3e5.js">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="343">
|
||||
<caret line="38" column="420879" selection-start-line="38" selection-start-column="420879" selection-end-line="38" selection-end-column="420879" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/config/index.js">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="782">
|
||||
<caret line="34" column="20" selection-start-line="34" selection-start-column="20" selection-end-line="34" selection-end-column="20" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/api/api.js">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="460">
|
||||
<caret line="20" column="34" selection-start-line="8" selection-end-line="9" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/assets/logo.png">
|
||||
<provider selected="true" editor-type-id="images" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/dist/static/img/fontawesome-webfont.912ec66.svg">
|
||||
<provider selected="true" editor-type-id="images" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/static/AMLlogo.png">
|
||||
<provider selected="true" editor-type-id="images" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/assets/user.png">
|
||||
<provider selected="true" editor-type-id="images" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/assets/logo4.png">
|
||||
<provider selected="true" editor-type-id="images" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/assets/bg1.jpg">
|
||||
<provider selected="true" editor-type-id="images" />
|
||||
</entry>
|
||||
<entry file="file://E:/anaconda3/Lib/site-packages/anaconda_navigator/static/css/styles.scss">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="129">
|
||||
<caret line="18" column="1" selection-start-line="18" selection-start-column="1" selection-end-line="18" selection-end-column="1" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/package.json">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="112">
|
||||
<caret line="14" column="21" selection-start-line="14" selection-start-column="21" selection-end-line="14" selection-end-column="21" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/vue_study.md">
|
||||
<provider editor-type-id="text-editor" />
|
||||
<provider selected="true" editor-type-id="split-provider[text-editor;markdown-preview-editor]">
|
||||
<state split_layout="SPLIT">
|
||||
<first_editor relative-caret-position="23">
|
||||
<caret line="1" selection-start-line="1" selection-end-line="1" />
|
||||
</first_editor>
|
||||
<second_editor />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/routes.js">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="43">
|
||||
<caret line="7" column="12" selection-start-line="7" selection-start-column="12" selection-end-line="7" selection-end-column="12" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/views/nav1/dailog.vue" />
|
||||
<entry file="file://$PROJECT_DIR$/src/App.vue">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="253">
|
||||
@@ -581,64 +681,66 @@
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/config/index.js">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="782">
|
||||
<caret line="34" column="20" selection-start-line="34" selection-start-column="20" selection-end-line="34" selection-end-column="20" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/routes.js">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="1035">
|
||||
<caret line="55" column="19" selection-start-line="55" selection-start-column="19" selection-end-line="55" selection-end-column="19" />
|
||||
<folding>
|
||||
<element signature="e#0#37#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/api/api.js">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="460">
|
||||
<caret line="20" column="34" selection-start-line="8" selection-end-line="9" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/vue_study.md">
|
||||
<provider editor-type-id="text-editor" />
|
||||
<provider selected="true" editor-type-id="split-provider[text-editor;markdown-preview-editor]">
|
||||
<state split_layout="SPLIT">
|
||||
<first_editor relative-caret-position="56">
|
||||
<caret line="113" column="12" selection-start-line="113" selection-start-column="12" selection-end-line="113" selection-end-column="12" />
|
||||
</first_editor>
|
||||
<second_editor />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/views/Login.vue">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="434">
|
||||
<caret line="64" column="32" selection-start-line="64" selection-start-column="32" selection-end-line="64" selection-end-column="32" />
|
||||
<state relative-caret-position="1104">
|
||||
<caret line="48" selection-start-line="48" selection-end-line="48" />
|
||||
<folding>
|
||||
<element signature="n#style#0;n#a#0;n#el-form#0;n#template#0;n#!!top" expanded="true" />
|
||||
<element signature="n#style#0;n#el-form-item#2;n#el-form#0;n#template#0;n#!!top" expanded="true" />
|
||||
<element signature="n#el-form-item#2;n#el-form#0;n#template#0;n#!!top" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/views/Main.vue">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="253">
|
||||
<caret line="11" selection-start-line="11" selection-end-line="11" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/views/Home.vue">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="966">
|
||||
<caret line="75" column="16" selection-start-line="75" selection-start-column="16" selection-end-line="75" selection-end-column="16" />
|
||||
<state relative-caret-position="483">
|
||||
<caret line="21" column="72" selection-start-line="21" selection-start-column="72" selection-end-line="21" selection-end-column="72" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/LICENSE">
|
||||
<provider selected="true" editor-type-id="text-editor" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/views/nav1/Clean.vue">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="253">
|
||||
<caret line="11" column="16" selection-start-line="11" selection-start-column="16" selection-end-line="11" selection-end-column="16" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/fesfe.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="332">
|
||||
<caret line="45" selection-start-line="45" selection-end-line="52" selection-end-column="50" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/views/nav1/MLmodel.vue">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="3220">
|
||||
<caret line="140" column="34" selection-start-line="140" selection-start-column="34" selection-end-line="140" selection-end-column="34" />
|
||||
<folding>
|
||||
<element signature="n#style#0;n#el-form#0;n#template#0;n#!!top" expanded="true" />
|
||||
<element signature="n#style#0;n#el-col#0;n#el-dialog#0;n#el-form#0;n#template#0;n#!!top" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/static/lzh3_day_csv.html">
|
||||
<provider selected="true" editor-type-id="text-editor" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/views/nav1/Table.vue">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="323">
|
||||
<caret line="96" column="95" selection-start-line="96" selection-start-column="95" selection-end-line="96" selection-end-column="95" />
|
||||
<state relative-caret-position="895">
|
||||
<caret line="104" selection-start-line="103" selection-end-line="104" />
|
||||
<folding>
|
||||
<element signature="n#style#0;n#span#0;n#section#0;n#template#0;n#!!top" expanded="true" />
|
||||
<element signature="n#style#0;n#el-table#0;n#section#0;n#template#0;n#!!top" expanded="true" />
|
||||
@@ -648,20 +750,11 @@
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/views/nav1/user.vue">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="201">
|
||||
<caret line="60" column="75" selection-start-line="60" selection-start-column="75" selection-end-line="60" selection-end-column="75" />
|
||||
<state relative-caret-position="109">
|
||||
<caret line="94" column="44" lean-forward="true" selection-start-line="94" selection-start-column="44" selection-end-line="94" selection-end-column="44" />
|
||||
<folding>
|
||||
<element signature="n#style#0;n#el-table#0;n#template#0;n#section#0;n#template#0;n#!!top" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/views/nav1/Form.vue">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="230">
|
||||
<caret line="154" column="23" lean-forward="true" selection-start-line="154" selection-start-column="23" selection-end-line="154" selection-end-column="23" />
|
||||
<folding>
|
||||
<element signature="n#style#0;n#el-col#0;n#el-dialog#0;n#el-form#0;n#template#0;n#!!top" expanded="true" />
|
||||
<element signature="n#style#0;n#iframe#0;n#!!top" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
"echarts": "^3.3.2",
|
||||
"element-ui": "^1.2.8",
|
||||
"font-awesome": "^4.7.0",
|
||||
"js-base64": "^3.6.0",
|
||||
"nprogress": "^0.2.0",
|
||||
"vue": "^2.2.2",
|
||||
"vue-router": "^2.3.0",
|
||||
|
||||
+4
-2
@@ -3,8 +3,9 @@ import NotFound from './views/404.vue'
|
||||
import Home from './views/Home.vue'
|
||||
import Main from './views/Main.vue'
|
||||
import Table from './views/nav1/Table.vue'
|
||||
import Form from './views/nav1/Form.vue'
|
||||
import MLmodel from './views/nav1/MLmodel.vue'
|
||||
import user from './views/nav1/user.vue'
|
||||
import Clean from './views/nav1/Clean.vue'
|
||||
import Page4 from './views/nav2/Page4.vue'
|
||||
import Page5 from './views/nav2/Page5.vue'
|
||||
import Page6 from './views/nav3/Page6.vue'
|
||||
@@ -33,7 +34,8 @@ let routes = [
|
||||
{ path: '/main', component: Main, name: '主页', hidden: true },
|
||||
{ path: '/table', component: Table, name: '我的数据集' },
|
||||
{ path: '/user', component: user, name: '数据预览' },
|
||||
{ path: '/form', component: Form, name: '快速建模' },
|
||||
{ path:'/clean', component: Clean, name:'数据清洗'},
|
||||
{ path: '/MLmodel', component: MLmodel, name: '快速建模' },
|
||||
|
||||
]
|
||||
},
|
||||
|
||||
+26
-10
@@ -1,7 +1,8 @@
|
||||
<template>
|
||||
<el-row class="container">
|
||||
<!-- header-->
|
||||
<el-col :span="24" class="header">
|
||||
<el-col :span="10" class="logo" :class="collapsed?'logo-collapse-width':'logo-width'">
|
||||
<el-col :span="10" class="logo" :class="collapsed? 'logo-collapse-width':'logo-width'">
|
||||
{{collapsed?'':sysName}}
|
||||
</el-col>
|
||||
<el-col :span="10">
|
||||
@@ -10,21 +11,26 @@
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="4" class="userinfo">
|
||||
|
||||
<el-dropdown trigger="hover">
|
||||
<span class="el-dropdown-link userinfo-inner"><img :src="this.sysUserAvatar" /> {{sysUserName}}</span>
|
||||
<span class="el-dropdown-link userinfo-inner">
|
||||
<i class="el-icon-setting"> 欢迎,{{sysUserName}}</i>
|
||||
</span>
|
||||
<el-dropdown-menu slot="dropdown">
|
||||
<el-dropdown-item>我的消息</el-dropdown-item>
|
||||
<el-dropdown-item>设置</el-dropdown-item>
|
||||
<el-dropdown-item>升级VIP</el-dropdown-item>
|
||||
<el-dropdown-item divided @click.native="logout">退出登录</el-dropdown-item>
|
||||
</el-dropdown-menu>
|
||||
</el-dropdown>
|
||||
</el-col>
|
||||
</el-col>
|
||||
|
||||
<!-- 侧边栏-->
|
||||
<el-col :span="24" class="main">
|
||||
<aside :class="collapsed?'menu-collapsed':'menu-expanded'">
|
||||
<!--导航菜单-->
|
||||
<el-menu :default-active="$route.path" class="el-menu-vertical-demo" @open="handleopen" @close="handleclose" @select="handleselect"
|
||||
unique-opened router v-show="!collapsed">
|
||||
unique-opened router v-if="!collapsed">
|
||||
<template v-for="(item,index) in $router.options.routes" v-if="!item.hidden">
|
||||
<el-submenu :index="index+''" v-if="!item.leaf">
|
||||
<template slot="title"><i :class="item.iconCls"></i>{{item.name}}</template>
|
||||
@@ -34,7 +40,7 @@
|
||||
</template>
|
||||
</el-menu>
|
||||
<!--导航菜单-折叠后-->
|
||||
<ul class="el-menu el-menu-vertical-demo collapsed" v-show="collapsed" ref="menuCollapsed">
|
||||
<ul class="el-menu el-menu-vertical-demo collapsed" v-if="collapsed" ref="menuCollapsed">
|
||||
<li v-for="(item,index) in $router.options.routes" v-if="!item.hidden" class="el-submenu item">
|
||||
<template v-if="!item.leaf">
|
||||
<div class="el-submenu__title" style="padding-left: 20px;" @mouseover="showMenu(index,true)" @mouseout="showMenu(index,false)"><i :class="item.iconCls"></i></div>
|
||||
@@ -44,12 +50,14 @@
|
||||
</template>
|
||||
<template v-else>
|
||||
<li class="el-submenu">
|
||||
<div class="el-submenu__title el-menu-item" style="padding-left: 20px;height: 56px;line-height: 56px;padding: 0 20px;" :class="$route.path==item.children[0].path?'is-active':''" @click="$router.push(item.children[0].path)"><i :class="item.iconCls"></i></div>
|
||||
<div class="el-submenu__title el-menu-item" style="padding-left: 20px;height: 56px;line-height: 56px;padding: 0 20px;" :class="$route.path==item.children[0].path?'is-active':''" @click="$router.push(item.children[0].path)">
|
||||
<i :class="item.iconCls"></i>
|
||||
</div>
|
||||
</li>
|
||||
</template>
|
||||
</li>
|
||||
</ul>
|
||||
</aside>
|
||||
</aside>
|
||||
<section class="content-container">
|
||||
<div class="grid-content bg-purple-light">
|
||||
<el-col :span="24" class="breadcrumb-container">
|
||||
@@ -77,7 +85,7 @@
|
||||
return {
|
||||
sysName:'ML代码生成平台',
|
||||
collapsed:false,
|
||||
sysUserName: '',
|
||||
sysUserName:sessionStorage.getItem('user'),
|
||||
sysUserAvatar: '',
|
||||
form: {
|
||||
name: '',
|
||||
@@ -127,10 +135,11 @@
|
||||
},
|
||||
mounted() {
|
||||
var user = sessionStorage.getItem('user');
|
||||
console.log("user:"+user)
|
||||
if (user) {
|
||||
user = JSON.parse(user);
|
||||
this.sysUserName = user.name || '';
|
||||
this.sysUserAvatar = user.avatar || '';
|
||||
console.log(user)
|
||||
this.sysUserName = user
|
||||
}
|
||||
|
||||
}
|
||||
@@ -151,10 +160,17 @@
|
||||
line-height: 60px;
|
||||
background: $color-primary;
|
||||
color:#fff;
|
||||
|
||||
.username{
|
||||
text-align: right;
|
||||
padding-right: 35px;
|
||||
float:left;
|
||||
}
|
||||
.userinfo {
|
||||
text-align: right;
|
||||
padding-right: 35px;
|
||||
float: right;
|
||||
|
||||
.userinfo-inner {
|
||||
cursor: pointer;
|
||||
color:#fff;
|
||||
|
||||
+147
-41
@@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<el-form :model="ruleForm2" :rules="rulesLogin" ref="ruleForm2" label-position="left" label-width="0px"
|
||||
class="demo-ruleForm login-container">
|
||||
<h3 class="title">系统登录</h3>
|
||||
<h3 class="title">机器学习代码生成器-登录</h3>
|
||||
<el-form-item prop="account">
|
||||
<el-input type="text" v-model="ruleForm2.account" auto-complete="off" placeholder="账号"></el-input>
|
||||
</el-form-item>
|
||||
@@ -10,7 +10,6 @@
|
||||
</el-form-item>
|
||||
<el-checkbox v-model="checked" checked class="remember">记住密码</el-checkbox>
|
||||
|
||||
|
||||
<a href="#" @click="handleRegist" style="margin-left:25%">没有账号?立即注册</a>
|
||||
<el-form-item style="width:100%;">
|
||||
<el-button type="primary" style="width:100%;" @click.native.prevent="handleSubmit2" :loading="logining">登录
|
||||
@@ -21,28 +20,28 @@
|
||||
<!-- 注册弹框-->
|
||||
<el-dialog title="注册" :visible.sync="dialogVisible" :close-on-click-modal="true" :modal="true"
|
||||
:show-close="true" :center="true">
|
||||
<el-form :model="registform" :rules="rulesRegist" :label-position="left">
|
||||
<el-form-item label="用户名">
|
||||
<el-form :model="registform" :rules="rulesRegist" ref="registform" label-position="left">
|
||||
<el-form-item label="用户名" prop="username">
|
||||
<el-input v-model="registform.username" type="text"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="密码">
|
||||
<el-form-item label="密码" prop="password">
|
||||
<el-input v-model="registform.password" type="password"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="确认密码">
|
||||
<el-form-item label="确认密码" prop="checkpassword">
|
||||
<el-input v-model="registform.checkpassword" type="password"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="注册邮箱">
|
||||
<el-form-item label="注册邮箱" prop="email">
|
||||
<el-input v-model="registform.email" type="email"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="验证码">
|
||||
<el-input v-mode="registform.checkcode"></el-input>
|
||||
<el-button type="original">获取验证码</el-button>
|
||||
<el-form-item label="验证码" prop="checkcode">
|
||||
<el-input v-model="registform.checkcode"></el-input>
|
||||
<el-button type="original" @click="getCode" :disabled="isDiabled">{{buttonName}}</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button @click="dialogVisible = false">取 消</el-button>
|
||||
<el-button type="primary" @click="dialogVisible = false">立即注册</el-button>
|
||||
</span>
|
||||
<el-button @click="dialogVisible = false">取 消</el-button>
|
||||
<el-button type="primary" @click.native.prevent="handleRegistSubmit">立即注册</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
</el-form>
|
||||
|
||||
@@ -51,21 +50,61 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
|
||||
import axios from 'axios'
|
||||
axios.defaults.withCredentials=true;
|
||||
//import NProgress from 'nprogress'
|
||||
let Base64 = require('js-base64').Base64
|
||||
export default {
|
||||
data() {
|
||||
var validateNull=(rule,value,callback)=>{
|
||||
|
||||
var validatePassword=(rule,value,callback)=>{
|
||||
if (value===''){
|
||||
callback(new Error("输入不能为空!"))
|
||||
}else if (this.registform.password!=value){
|
||||
callback(new Error("两次密码输入不一致"))
|
||||
} else {
|
||||
callback()
|
||||
}
|
||||
};
|
||||
|
||||
var validateUserExist=(rule,value,callback)=>{
|
||||
if (value===''){
|
||||
callback(new Error("输入不能为空!"))
|
||||
}
|
||||
axios.post("/api/check_exist",{
|
||||
"query_dict":{"username":value}
|
||||
}).then((response)=>{
|
||||
var data=response.data
|
||||
if (data.msg===true){
|
||||
callback(new Error("该用户名已存在"))
|
||||
}
|
||||
else
|
||||
callback()
|
||||
})
|
||||
|
||||
|
||||
};
|
||||
var validateEmailExist=(rule,value,callback)=>{
|
||||
if (value===''){
|
||||
callback(new Error("输入不能为空!"))
|
||||
}
|
||||
axios.post("/api/check_exist",{
|
||||
"query_dict":{"email":value}
|
||||
}).then((response)=>{
|
||||
var data=response.data
|
||||
if (data.msg){
|
||||
callback(new Error("该邮箱号已注册"))
|
||||
}else
|
||||
callback()
|
||||
})
|
||||
|
||||
}
|
||||
|
||||
return {
|
||||
logining: false,
|
||||
ruleForm2: {
|
||||
account: 'admin',
|
||||
checkPass: '123456'
|
||||
account: '',
|
||||
checkPass: ''
|
||||
},
|
||||
rulesLogin: {
|
||||
account: [
|
||||
@@ -74,20 +113,9 @@
|
||||
],
|
||||
checkPass: [
|
||||
{required: true, message: '请输入密码', trigger: 'blur'},
|
||||
//{ validator: validaePass2 }
|
||||
]
|
||||
},
|
||||
rulesRegist:{
|
||||
username:[
|
||||
{required:true,message:'请输入用户名',trigger:'blur'},
|
||||
{min:1,max:16,message:"长度在1-16个字符",trigger:'blur'}
|
||||
],
|
||||
password:[
|
||||
{required:true,message:'请输入密码',trigger:'blur'},
|
||||
{min:6,max:16,message:"长度在6-16个字符",trigger:'blur'}
|
||||
]
|
||||
},
|
||||
checked: false,
|
||||
|
||||
registform: {
|
||||
username: '',
|
||||
password: '',
|
||||
@@ -95,6 +123,31 @@
|
||||
email: '',
|
||||
checkcode: ''
|
||||
},
|
||||
rulesRegist:{
|
||||
username:[
|
||||
{required: true, message:'请输入用户名', trigger:'blur'},
|
||||
{min:1, max:16, message:"长度在1-16个字符", trigger:'blur'},
|
||||
{validator:validateUserExist,trigger:'blur'}
|
||||
],
|
||||
password:[
|
||||
{required:true,message:'请输入密码',trigger:'blur'},
|
||||
{min:6,max:16,message:"长度在6-16个字符",trigger:'blur'}
|
||||
],
|
||||
checkpassword:[
|
||||
{validator:validatePassword}
|
||||
],
|
||||
email:[
|
||||
{ required: true, message: '请输入邮箱地址', trigger: 'blur' },
|
||||
{ type: 'email', message: '请输入正确的邮箱地址', trigger: ['blur', 'change'] },
|
||||
{validator:validateEmailExist,trigger:'blur'}
|
||||
],
|
||||
checkcode:[
|
||||
{required: true, message: '请输入验证码', trigger: 'blur'}
|
||||
]
|
||||
},
|
||||
checked: false,
|
||||
isDiabled:false,//验证码发送按钮
|
||||
buttonName:"获取验证码",
|
||||
dialogVisible: false
|
||||
};
|
||||
},
|
||||
@@ -105,29 +158,82 @@
|
||||
handleReset2() {
|
||||
this.$refs.ruleForm2.resetFields();
|
||||
},
|
||||
handleSubmit2: function (ev) {
|
||||
handleSubmit2(ev) {
|
||||
var _this = this;
|
||||
this.$refs.ruleForm2.validate((valid) => {
|
||||
if (valid) {
|
||||
//_this.$router.replace('/table');
|
||||
this.logining = true;
|
||||
//NProgress.start();
|
||||
var loginParams = {
|
||||
axios.post("/api/login",{
|
||||
username: this.ruleForm2.account,
|
||||
password: this.ruleForm2.checkPass
|
||||
};
|
||||
|
||||
this.logining = false;
|
||||
var user = 'admin'
|
||||
sessionStorage.setItem('user', JSON.stringify(user));
|
||||
sessionStorage.setItem('dataset_name', '')
|
||||
this.$router.push({path: '/table'});
|
||||
password: Base64.encode(this.ruleForm2.checkPass)
|
||||
}).then((response)=>{
|
||||
var data=response.data
|
||||
if (data.msg===true) {
|
||||
this.logining = false;
|
||||
var user =this.ruleForm2.account
|
||||
console.log(user)
|
||||
sessionStorage.setItem('user', JSON.stringify(user));
|
||||
sessionStorage.setItem('dataset_name', '')
|
||||
this.$router.push({path: '/table'});
|
||||
this.$message.success("登录成功")
|
||||
}else {
|
||||
this.logining = false;
|
||||
this.$message.error("用户名或密码错误,登录失败")
|
||||
}
|
||||
})
|
||||
} else {
|
||||
console.log('error submit!!');
|
||||
this.$message.error("用户名或密码错误,登录失败")
|
||||
return false;
|
||||
}
|
||||
});
|
||||
})},
|
||||
|
||||
handleRegistSubmit(){
|
||||
var _this = this;
|
||||
var flag=false
|
||||
this.$refs.registform.validate((valid) => {
|
||||
if (valid) {
|
||||
console.log("表单校验通过!")
|
||||
flag=true
|
||||
axios.post('/api/regist',{
|
||||
username:this.registform.username,
|
||||
password:Base64.encode(this.registform.password),
|
||||
email:this.registform.email,
|
||||
checkcode:this.registform.checkcode
|
||||
}).then((response)=> {
|
||||
var data=response.data
|
||||
this.$refs['registform'].resetFields()
|
||||
this.dialogVisible=false
|
||||
this.$message.success(data.msg)
|
||||
}).catch((error)=>{
|
||||
console.log(error.response.data)
|
||||
var data=error.response.data
|
||||
this.$message.error(data.msg)
|
||||
})
|
||||
} else {
|
||||
this.$message.error("请先正确填写表单")
|
||||
}
|
||||
})
|
||||
|
||||
},
|
||||
getCode(){
|
||||
let me = this;
|
||||
this.isDiabled=true
|
||||
axios.post('api/send_code',{
|
||||
"email":this.registform.email
|
||||
})
|
||||
var totalTime=60
|
||||
let clock=window.setInterval(()=>{
|
||||
totalTime--
|
||||
this.buttonName=totalTime+ "s后重新发送"
|
||||
if (totalTime < 0) { //当倒计时小于0时清除定时器
|
||||
window.clearInterval(clock)
|
||||
this.buttonName= '重新获取验证码'
|
||||
totalTime = 60
|
||||
this.isDiabled=false
|
||||
}
|
||||
},1000)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,64 @@
|
||||
<template>
|
||||
<!--工具条-->
|
||||
<el-col :span="24" class="toolbar" style="padding-bottom: 0px;">
|
||||
|
||||
<el-select v-model="value" placeholder="请选择">
|
||||
<el-option
|
||||
v-for="item in options"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value">
|
||||
</el-option>
|
||||
</el-select>
|
||||
|
||||
<el-button type="primary" @click="add_step">添加步骤</el-button>
|
||||
</el-col>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: "Clean",
|
||||
|
||||
data(){
|
||||
return{
|
||||
options:[],
|
||||
value:"",
|
||||
cols: [],
|
||||
tableData: [],
|
||||
isloading:false
|
||||
}
|
||||
},
|
||||
created(){
|
||||
this.get_datasets()
|
||||
},
|
||||
methods:{
|
||||
get_datasets(){
|
||||
var original=JSON.parse(sessionStorage.getItem("dataset_list"))
|
||||
console.log(original)
|
||||
for (var dataset of original){
|
||||
this.options.push({
|
||||
label:dataset,
|
||||
value:dataset
|
||||
})
|
||||
}
|
||||
},
|
||||
get_dataset_cols(dataset_name){
|
||||
axios.get('api/show_dataset?username='+sessionStorage.getItem('user')+'&dataset_name='+dataset_name)
|
||||
.then((response)=>{
|
||||
var body_data= response.data.data
|
||||
var columns=body_data.cols
|
||||
sessionStorage.setItem("dataset_cols",JSON.stringify(columns))
|
||||
sessionStorage.setItem("dataset_name",dataset_name)
|
||||
|
||||
})
|
||||
},
|
||||
add_step(){
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
|
||||
</style>
|
||||
@@ -81,7 +81,7 @@
|
||||
<el-col style="white-space: pre-wrap;">{{original_code}}</el-col>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button @click="dialogVisible = false">取 消</el-button>
|
||||
<el-button type="primary" @click="dialogVisible = false">导出文件</el-button>
|
||||
<el-button type="primary" @click="onExportCode">导出文件</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
</el-form>
|
||||
@@ -89,6 +89,7 @@
|
||||
|
||||
<script>
|
||||
import axios from 'axios'
|
||||
axios.defaults.withCredentials=true;
|
||||
export default {
|
||||
inject:['reload'],
|
||||
|
||||
@@ -136,7 +137,7 @@
|
||||
onSubmit() {
|
||||
console.log('submit!');
|
||||
axios.post('/api/generate_code',{
|
||||
username:"admin",
|
||||
username:JSON.parse(sessionStorage.getItem('user')),
|
||||
data:this.form
|
||||
}).then((response)=>{
|
||||
var code=response.data.data
|
||||
@@ -159,8 +160,9 @@
|
||||
this.dataset_cols=[]
|
||||
this.target_cols=[]
|
||||
this.tableData=[]
|
||||
axios.get('api/show_dataset?dataset_name='+dataset_name)
|
||||
axios.get('api/show_dataset?username='+sessionStorage.getItem('user')+'&dataset_name='+dataset_name)
|
||||
.then((response)=>{
|
||||
|
||||
var body_data= response.data.data
|
||||
var columns=body_data.cols
|
||||
for(var column of columns){
|
||||
@@ -204,6 +206,32 @@
|
||||
}
|
||||
}
|
||||
|
||||
},
|
||||
//导出代码文件
|
||||
onExportCode(){
|
||||
axios.get('/api/export_code',{
|
||||
params: {
|
||||
username: JSON.parse(sessionStorage.getItem('user')),
|
||||
name: this.form.name,
|
||||
dataset_name: this.form.dataset_name
|
||||
},
|
||||
|
||||
}).then((response)=>{
|
||||
let url = window.URL.createObjectURL(new Blob([response.data]));
|
||||
// 生成一个a标签
|
||||
let link = document.createElement("a");
|
||||
link.style.display = "none";
|
||||
link.href = url;
|
||||
// 生成时间戳
|
||||
let timestamp=new Date().getTime();
|
||||
link.download = "generate_"+JSON.parse(sessionStorage.getItem('user'))+"_"+this.form.name + ".py";
|
||||
document.body.appendChild(link);
|
||||
link.click();
|
||||
|
||||
}).catch(error => {
|
||||
this.$message.error("下载失败")
|
||||
})
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -5,6 +5,7 @@
|
||||
drag
|
||||
accept=".csv, .txt, .xls, .xlsx"
|
||||
action="/api/upload_dataset"
|
||||
:data="user_info"
|
||||
:limit="1"
|
||||
:before-upload="beforeUpload"
|
||||
:on-success="handleAvatarSuccess"
|
||||
@@ -52,7 +53,10 @@
|
||||
return {
|
||||
tableData: [],
|
||||
list:"name",
|
||||
isloading:false
|
||||
isloading:false,
|
||||
user_info:{
|
||||
"username":sessionStorage.getItem('user')
|
||||
}
|
||||
|
||||
}
|
||||
},
|
||||
@@ -78,7 +82,8 @@
|
||||
//获取用户的所有数据集
|
||||
data_list(){
|
||||
var dataset_list=[]
|
||||
axios.get('/api/get_data_list')
|
||||
var username=sessionStorage.getItem('user')
|
||||
axios.get('/api/get_data_list?username='+username)
|
||||
.then((response)=>{
|
||||
this.isloading=true
|
||||
var original=response.data.data
|
||||
@@ -142,8 +147,8 @@
|
||||
del(row,i){
|
||||
console.log(row.name,i)
|
||||
axios.post('/api/del_dataset',{
|
||||
username:"admin",
|
||||
dataset_name:row.name
|
||||
dataset_name:row.name,
|
||||
username:sessionStorage.getItem('user')
|
||||
}).then((response)=> {
|
||||
console.log("查看返回值:",response.data)
|
||||
var body=response.data
|
||||
|
||||
+133
-102
@@ -1,116 +1,147 @@
|
||||
<template>
|
||||
<section>
|
||||
<!--工具条-->
|
||||
<el-col :span="24" class="toolbar" style="padding-bottom: 0px;">
|
||||
<section>
|
||||
<!--工具条-->
|
||||
<el-col :span="24" class="toolbar" style="padding-bottom: 0px;">
|
||||
|
||||
<el-select v-model="value" placeholder="请选择">
|
||||
<el-option
|
||||
v-for="item in options"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value">
|
||||
</el-option>
|
||||
</el-select>
|
||||
<el-select v-model="value" placeholder="请选择" @change="on_dataset_change">
|
||||
<el-option
|
||||
v-for="item in options"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value">
|
||||
</el-option>
|
||||
</el-select>
|
||||
|
||||
<el-button type="primary" @click="show_dataset">查看</el-button>
|
||||
</el-col>
|
||||
<el-button type="primary" @click="show_dataset">查看</el-button>
|
||||
<el-button type="" @click="show_dataset_report" :loading="isloading" plain>生成报告</el-button>
|
||||
|
||||
<!--列表-->
|
||||
<template>
|
||||
<el-table class="tb-edit" highlight-current-row :data="tableData" style="width: 100%"
|
||||
v-loading="isloading"
|
||||
element-loading-text="正在拼命加载">
|
||||
<template v-for="(col ,index) in cols">
|
||||
<el-table-column v-if="col.type==='sort'" :prop="col.prop" sortable :label="col.label"></el-table-column>
|
||||
</template>
|
||||
</el-table>
|
||||
<!-- 数据分析报告展示区域-->
|
||||
<el-col v-html="frame"></el-col>
|
||||
</el-col>
|
||||
|
||||
</template>
|
||||
<!--列表-->
|
||||
<template>
|
||||
<el-table class="tb-edit" highlight-current-row :data="tableData" style="width: 100%"
|
||||
v-loading="isloading"
|
||||
element-loading-text="正在拼命加载">
|
||||
<template v-for="(col ,index) in cols">
|
||||
<el-table-column v-if="col.type==='sort'" :prop="col.prop" sortable
|
||||
:label="col.label"></el-table-column>
|
||||
</template>
|
||||
</el-table>
|
||||
|
||||
</section>
|
||||
</template>
|
||||
|
||||
</section>
|
||||
</template>
|
||||
<script>
|
||||
import { getUserList } from '../../api/api';
|
||||
import axios from 'axios'
|
||||
import Table from './Table.vue'
|
||||
import axios from 'axios'
|
||||
|
||||
//import NProgress from 'nprogress'
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
options:[],
|
||||
value:"",
|
||||
cols: [],
|
||||
tableData: [],
|
||||
isloading:true
|
||||
axios.defaults.withCredentials = true;
|
||||
|
||||
}
|
||||
},
|
||||
inject:['reload'],
|
||||
created() {
|
||||
this.get_datasets()
|
||||
var datasetName=sessionStorage.getItem('dataset_name')
|
||||
if (datasetName!='') {
|
||||
this.value=datasetName
|
||||
this.show_dataset()
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
get_datasets(){
|
||||
//import NProgress from 'nprogress'
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
options: [],
|
||||
value: "",
|
||||
cols: [],
|
||||
tableData: [],
|
||||
isloading: false,
|
||||
dialogVisible: false,
|
||||
content: "",
|
||||
frame: ''
|
||||
}
|
||||
},
|
||||
inject: ['reload'],
|
||||
created() {
|
||||
this.get_datasets()
|
||||
var datasetName = sessionStorage.getItem('dataset_name')
|
||||
if (datasetName != '') {
|
||||
this.value = datasetName
|
||||
this.show_dataset()
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
get_datasets() {
|
||||
var original = JSON.parse(sessionStorage.getItem("dataset_list"))
|
||||
console.log(original)
|
||||
for (var dataset of original) {
|
||||
this.options.push({
|
||||
label: dataset,
|
||||
value: dataset
|
||||
})
|
||||
}
|
||||
},
|
||||
//数据集发生变化时,隐藏生成报告的iframe
|
||||
on_dataset_change(){
|
||||
this.frame=""
|
||||
sessionStorage.setItem("dataset_name",this.value)
|
||||
this.show_dataset()
|
||||
},
|
||||
show_dataset() {
|
||||
this.cols = []
|
||||
this.tableData = []
|
||||
var username = sessionStorage.getItem('user')
|
||||
this.isloading = true
|
||||
axios.get('api/show_dataset?username=' + username + "&dataset_name=" + this.value)
|
||||
.then((response) => {
|
||||
var body = response.data
|
||||
var body_data = response.data.data
|
||||
var columns = body_data.cols
|
||||
console.log(body)
|
||||
//添加表头
|
||||
for (var column of columns) {
|
||||
this.cols.push({
|
||||
label: column,
|
||||
prop: column,
|
||||
type: "sort"
|
||||
})
|
||||
}
|
||||
//计算数据长度,循环添加
|
||||
var data_length = body_data[columns[0]].length
|
||||
if (data_length > 100) {
|
||||
var text = "当前数据集共有" + data_length + "条数据,预览仅显示前100条"
|
||||
data_length = 100
|
||||
this.$message(text, 'info')
|
||||
}
|
||||
for (var i = 0; i < data_length; i++) {
|
||||
//按行添加
|
||||
var row = {}
|
||||
for (var column of columns) {
|
||||
var cell = body_data[column][i]
|
||||
row[column] = cell ? cell: ""
|
||||
}
|
||||
this.tableData.push(row)
|
||||
}
|
||||
sessionStorage.setItem("dataset_name", this.value)
|
||||
this.isloading = false
|
||||
}).catch((error) => {
|
||||
this.isloading = false
|
||||
console.log(error)
|
||||
})
|
||||
},
|
||||
show_dataset_report() {
|
||||
this.dialogVisible = false
|
||||
this.isloading = true
|
||||
var username = sessionStorage.getItem('user')
|
||||
axios.get('api/show_dataset_report?username=' + username + "&dataset_name=" + this.value)
|
||||
.then((response) => {
|
||||
var html_name = response.data.data
|
||||
var insert_iframe = '<iframe src="../../../static/'+html_name+
|
||||
'" scrolling="yes" style="width: 100%;height: 500px;" frameborder="0"></iframe>'
|
||||
this.frame=insert_iframe
|
||||
console.log("生成成功")
|
||||
this.dialogVisible = true
|
||||
this.isloading = false
|
||||
}).catch((error) => {
|
||||
console.log("报告生成失败")
|
||||
this.isloading = false
|
||||
})
|
||||
},
|
||||
},
|
||||
|
||||
var original=JSON.parse(sessionStorage.getItem("dataset_list"))
|
||||
console.log(original)
|
||||
for (var dataset of original){
|
||||
this.options.push({
|
||||
label:dataset,
|
||||
value:dataset
|
||||
})
|
||||
}
|
||||
|
||||
},
|
||||
show_dataset(){
|
||||
this.cols=[]
|
||||
this.tableData=[]
|
||||
this.isloading=true
|
||||
axios.get('api/show_dataset?dataset_name='+this.value)
|
||||
.then((response)=>{
|
||||
this.isloading=true
|
||||
var body=response.data
|
||||
var body_data= response.data.data
|
||||
var columns=body_data.cols
|
||||
console.log(body)
|
||||
//添加表头
|
||||
for (var column of columns){
|
||||
this.cols.push({
|
||||
label:column,
|
||||
prop:column,
|
||||
type:"sort"
|
||||
})
|
||||
}
|
||||
//计算数据长度,循环添加
|
||||
var data_length=body_data[columns[0]].length
|
||||
if (data_length>100){
|
||||
var text="当前数据集共有"+data_length+"条数据,预览仅显示前100条"
|
||||
data_length=100
|
||||
this.$message(text,'info')
|
||||
}
|
||||
for(var i=0;i<data_length;i++){
|
||||
//按行添加
|
||||
var row={}
|
||||
for(var column of columns){
|
||||
row[column]=body_data[column][i]
|
||||
}
|
||||
this.tableData.push(row)
|
||||
}
|
||||
sessionStorage.setItem("dataset_name",this.value)
|
||||
this.isloading=false
|
||||
}).catch((error)=>{
|
||||
this.isloading=false
|
||||
})
|
||||
}
|
||||
},
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
</script>
|
||||
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 21 KiB |
Reference in New Issue
Block a user