guhongwei 4 years ago
parent
commit
c37143baff
3 changed files with 193 additions and 0 deletions
  1. 13 0
      src/router/index.js
  2. 84 0
      src/views/user/experience.vue
  3. 96 0
      src/views/user/newspaper.vue

+ 13 - 0
src/router/index.js

@@ -201,6 +201,19 @@ const routes = [
     meta: { title: '课程详情', isleftarrow: true },
     component: () => import('../views/user/trainVidoeDetail.vue'),
   },
+  // 09-24
+  {
+    path: '/user/experience',
+    name: 'experience',
+    meta: { title: '培训心得', isleftarrow: true },
+    component: () => import('../views/user/experience.vue'),
+  },
+  {
+    path: '/user/newspaper',
+    name: 'newspaper',
+    meta: { title: '新人才报', isleftarrow: true },
+    component: () => import('../views/user/newspaper.vue'),
+  },
   // 09-29
   {
     path: '/user/pingfenGroup/index',

+ 84 - 0
src/views/user/experience.vue

@@ -0,0 +1,84 @@
+<template>
+  <div id="experience">
+    <el-row>
+      <el-col :span="24" class="style">
+        <el-col :span="24" class="top">
+          <NavBar v-show="navShow" :title="title" :isleftarrow="isleftarrow"> </NavBar>
+        </el-col>
+        <el-col :span="24" class="main">
+          <van-form>
+            <van-field v-model="form.title" name="标题" label="标题" placeholder="标题" :rules="[{ required: true, message: '请填写标题' }]" />
+            <van-field
+              v-model="form.content"
+              name="内容"
+              label="内容"
+              placeholder="内容"
+              type="textarea"
+              :rules="[{ required: true, message: '请填写内容' }]"
+            />
+            <div style="margin: 16px;">
+              <van-button round block type="info" @click="onSubmit">
+                提交
+              </van-button>
+            </div>
+          </van-form>
+        </el-col>
+      </el-col>
+    </el-row>
+  </div>
+</template>
+
+<script>
+import NavBar from '@/layout/common/topInfo.vue';
+import { mapState, createNamespacedHelpers } from 'vuex';
+export default {
+  name: 'experience',
+  props: {},
+  components: {
+    NavBar,
+  },
+  data: function() {
+    return {
+      title: '',
+      isleftarrow: '',
+      navShow: true,
+      form: {},
+    };
+  },
+  created() {},
+  methods: {
+    onSubmit() {
+      console.log(this.form);
+    },
+  },
+  computed: {
+    ...mapState(['user']),
+  },
+  mounted() {
+    this.title = this.$route.meta.title;
+    this.isleftarrow = this.$route.meta.isleftarrow;
+  },
+  watch: {
+    $route(to, from) {
+      this.title = to.meta.title;
+      this.isleftarrow = to.meta.isleftarrow;
+    },
+  },
+};
+</script>
+
+<style lang="less" scoped>
+.style {
+  width: 100%;
+  min-height: 667px;
+  position: relative;
+  background-color: #f9fafc;
+}
+.top {
+  height: 46px;
+  overflow: hidden;
+}
+.main {
+  min-height: 570px;
+}
+</style>

+ 96 - 0
src/views/user/newspaper.vue

@@ -0,0 +1,96 @@
+<template>
+  <div id="newspaper">
+    <el-row>
+      <el-col :span="24" class="style">
+        <el-col :span="24" class="top">
+          <NavBar v-show="navShow" :title="title" :isleftarrow="isleftarrow"> </NavBar>
+        </el-col>
+        <el-col :span="24" class="main">
+          <el-form ref="form" label-width="80px">
+            <el-form-item label="文件上传" prop="zynumberfile">
+              <upload
+                :limit="1"
+                :data="pic"
+                type="pic"
+                listType="text"
+                :url="`/files/task/upload`"
+                :newspaperdialog="newspaperdialog"
+                @upload="uploadSuccess"
+                @delete="toDelete"
+              ></upload>
+            </el-form-item>
+            <div style="margin: 16px;">
+              <el-form-item>
+                <el-button type="primary" @click="onSubmit()">上传</el-button>
+              </el-form-item>
+            </div>
+          </el-form>
+        </el-col>
+      </el-col>
+    </el-row>
+  </div>
+</template>
+
+<script>
+import upload from '@/components/upload-file.vue';
+import NavBar from '@/layout/common/topInfo.vue';
+import { mapState, createNamespacedHelpers } from 'vuex';
+export default {
+  name: 'newspaper',
+  props: {},
+  components: {
+    NavBar,
+    upload,
+  },
+  data: function() {
+    return {
+      title: '',
+      isleftarrow: '',
+      navShow: true,
+      pic: '',
+      newspaperdialog: false,
+    };
+  },
+  created() {},
+  methods: {
+    onSubmit() {
+      console.log(this.pic);
+    },
+    uploadSuccess({ type, data }) {
+      this.$set(this, `${type}`, data.uri);
+    },
+    toDelete(index) {
+      this.pic.splice(index, 1);
+    },
+  },
+  computed: {
+    ...mapState(['user']),
+  },
+  mounted() {
+    this.title = this.$route.meta.title;
+    this.isleftarrow = this.$route.meta.isleftarrow;
+  },
+  watch: {
+    $route(to, from) {
+      this.title = to.meta.title;
+      this.isleftarrow = to.meta.isleftarrow;
+    },
+  },
+};
+</script>
+
+<style lang="less" scoped>
+.style {
+  width: 100%;
+  min-height: 667px;
+  position: relative;
+  background-color: #f9fafc;
+}
+.top {
+  height: 46px;
+  overflow: hidden;
+}
+.main {
+  min-height: 570px;
+}
+</style>