7. vue全局样式 axios 请求拦截器(添加请求头数据) 鼠标切换为小手 元素之间的间距 作用域插槽 添加 index 索引 模板字符串 发送请求

1. vue 项目全局样式

// global.css 全局样式文件
html, body, #app {
    height: 100%;
    margin: 0;
    padding: 0;
}

// 导入 css 全局样式  在main.js中导入 css文件
import './assets/css/global.css'

<br />

2. axios 并设置 默认地址 axios 请求拦截器

// 导入 axios 并设置 默认地址
import axios from 'axios'
axios.defaults.baseURL = 'http://127.0.0.1:8888/api/private/v1/'
// axios 请求拦截器   添加请求头 Authorization 字段 才能访问有权限的接口
axios.interceptors.request.use( config => {
  // console.log(config)
  config.headers.Authorization = window.sessionStorage.getItem('token')
  // 在最后必须 return config
  return config
})
Vue.prototype.$http = axios

// 调用接口
//   获取左侧菜单数据
    async getMenuList() {
       const {data: res} = await this.$http.get('menus')
       console.log(res)
    }

<br />

3. 鼠标切换为小手 元素之间的间距

// 元素之间的间距 大小 设置
    letter-spacing: 0.2em;
    // 将鼠标切换为小手
    cursor: pointer;

<br />

4. 作用域插槽 添加 index 索引

<!-- 列表区域 -->
      <el-table :data="userlist" border stripe>
        <!-- 展开列 -->
        <el-table-column type="expand"></el-table-column>
        <!-- 添加 index 索引 -->
        <el-table-column type="index" label="#"></el-table-column>
        <el-table-column label="姓名" prop="username"></el-table-column>
     </el-table>

<!-- 作用域插槽 -->
          <template slot-scope="scope">
            <!-- {{ scope.row }}  表示这一整行 的数据 -->
            <el-switch v-model="scope.row.mg_state"> </el-switch>
          </template>

<br />

5. 模板字符串 发送请求

// 监听 switch 开关状态的改变
    async userStateChanged(userinfo) {
        // console.log(userinfo)
        const {data: res} = await this.$http.put(`users/${userinfo.id}/state/${userinfo.mg_state}`)

        if(res.meta.status !== 200) {
            // 如果失败 就不做任何修改
            userinfo.mg_state = !userinfo.mg_state
            this.$message.error('更改用户状态失败!')
        }
        this.$message.success('更改用户状态成功!')
    }
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • VUE Vue :数据驱动的M V Vm框架 m :model(后台提供数据),v :view(页面),vM(模板...
    wudongyu阅读 5,500评论 0 11
  • 日常知识点总结(vue篇): 1、vue的生命周期: Vue实例从开始创建,初始化数据,编译模板,挂载Dom->渲...
    依稀_Sting阅读 804评论 0 2
  • 前端技术栈 vue、vue-router(路由)、Element-UI、Axios(发起网络数据请求)、Echar...
    KongWish阅读 631评论 0 1
  • 前端常见的一些问题 1.前端性能优化手段? 1. 尽可能使用雪碧图2. 使用字体图标代替图片3. 对HTML,cs...
    十八人言阅读 1,235评论 0 1
  • 打开Home.vue组件,进行布局: 默认情况下,跟element-ui组件同名的类名可以帮助我们快速的给对应的组...
    王玉伟的伟阅读 1,649评论 0 0

友情链接更多精彩内容