zoukankan      html  css  js  c++  java
  • 用vue+element-ui开发后台笔记

    1、前端通过 formData: new FormData(), 构造对象传数值给后台!

    当传给后台的参数中有图片的时候,需要把需要传输的数据通过构造对象new FormData()的形式存数据,并且在传给后端的数据格式中要进行transfromRequest进行转化,从而模仿表单from提交

    2、在vue中使用wnidow.location.href进行页面跳转时,跳转链接需要加协议http://不然跳转不过去!!!!

    3、在使用axios进行ajax请求时,如果传输的数据中含有图片上传,这时候需要通过new formData封装传输,

    4、表格中直接用prop获取数据,如果是点击是获取当前行的数据,那么使用template的scope属性!!!

     5、嵌套路由tabs选卡切换

    效果如下

    router设置

    AppManageV2htmlsrcviewsactivitychannelactivityChannelList.vue

     watch: {
        '$route'(to, from) {
          // 对路由变化作出响应...
          if (to.name === 'ActivityChannelList') {
            this.$router.push({
              name: 'ApplianceChannel'
            })
          }
          this.activeName = to.name
        }
      },
      created() {
        console.log(this.$route)
        if (this.$route.name === 'ActivityChannelList') {
          this.$router.push({
            name: 'ApplianceChannel',
            query: this.$route.query
          })
          this.activeName = 'ApplianceChannel'
        } else {
          this.activeName = this.$route.name
        }
      },
      methods: {
        handleTabClick(tabs) {
          this.$router.push({
            name: tabs.name,
            query: this.$route.query
          })
        },
        beforeLeave(activeName, oldActiveName) {
        }
      }

     6、表格自定义序号(0,1,2......)

    view层代码如下

    <el-table-column :index="indexMethod"
                             label="序号"
                             align="center"
                             type="index"
                             width="80" />

    method代码如下

        indexMethod(index) {
          return index + 10 * (this.listQuery.page - 1)
        }

    7、搜索功能实现(渠道统计)

    搜索输入的关键字字段名都统一放在data里面的listQuery对象里面

    listQuery: {
            sub_key: '',
            sub_name: '',
            page: 1,
            page_size: 10
          },

    然后对listQuery变量进行监听计算

    computed: {
        queryEmpty() {
          return this.listQuery.sub_key === '' &&
            this.listQuery.sub_name === ''
        }
      },
      watch: {
        'queryEmpty'(newVal) {
          if (newVal) {
            this.$message.info('搜索条件清空,展示全部数据')
            console.log('条件清空,渲染原始列表')
            this.fetchData()
          }
        },
        'list'(newVal) {
          newVal.length === 0 ? this.listQuery.page = 1 : true
        }
    
      },

    method里面进行搜索时间执行

    // 搜索按钮
        _search() {
          if (!this.queryEmpty) {
            this.listQuery.page = 1
            this.fetchData()
          } else {
            this.$message.info('搜索条件不能为空')
          }
        }

    注意:监听search里面的属性,如果改属性是通过组件的形式传过来值,那么该属性在定义search对象的时候,要一起定义,设置!!!不然computed、watch属性监听不到这个属性!!!

     、

  • 相关阅读:
    redis_03 _ 高性能IO模型:为什么单线程Redis能那么快
    redis_02 _ 数据结构:快速的Redis有哪些慢操作?
    redis-01 _ 基本架构:一个键值数据库包含什么?
    mysql_28 _ 读写分离有哪些坑
    mysql_27 _ 主库出问题了,从库怎么办
    小程序的转发功能
    简单几何(求交点) UVA 11178 Morley's Theorem
    测试开发CICD——Docker——windows8上环境安装
    测试开发进阶——spring boot——MVC——MyBatis初步了解(转载)
    BZOJ 2226 [Spoj 5971] LCMSum
  • 原文地址:https://www.cnblogs.com/qdlhj/p/10411563.html
Copyright © 2011-2022 走看看