vue-cli数据请求

vue-cli项目创建
1.全局安装vue-cli(注:要求node.js版本是8+)
cnpm install -g @vue/cli
or
yarn global add @vue/cli
检测安装:vue -V

2.创建项目:vue create 项目名称(可以写.代表在本文件夹创建)

这里如果你是第一次使用脚手架进行项目创建的话,是只有两项提示。

第一项是默认配置,我们一般选择第二项自定义配置进行项目构建。
我们可以自由的选择哪些配置,按键盘上下键进行选中,安装。
选中哪一个,通过键盘空格键确定,所有的都选择完毕后,按键盘的Enter键进行下一步。

文件名后缀是.vue的为单文件组件,包含三部分:template script style。内部配置wepack的vue-loader来去解析处理解析以.vue为后缀名的单文件组件。

  • style标签 加上scoped属性,css局部生效 ,想要影响子组件可以用>>>穿透,sass预处理器用/deep/;
  • style标签 加上lang=“scss”,支持scss。

如果配置了eslint(严格语法检查),想要关闭它,那么需要创建vue.config.js文件,采用如下代码:

module.exports = {
    devServer: {
        overlay: {
          warnings: false,
          errors: false
        }
    },
    lintOnSave:false //直接关闭eslint检查
}

在这个文件夹还可以进行proxy代理配置、alias别名配置和打包路径。

module.exports = {
//打包路径
  publicPath: '/vue-demo',
  
  devServer: {
    overlay: {
      warnings: false,
      errors: false
    },
    
    //proxy代理配置,上传服务器的
    proxy: {
    //表示要匹配请求的url中,全部'http://服务器网址:3000/api'
      '/api': { 
        target: 'http://服务器网址:3000',//代理接口
        changeOrigin:true,//是否跨域
        pathRewrite:{
          "^/api":""//重写这个路径为'http://服务器网址:3000'
        }
      }
  }
},//客户端关闭了
  lintOnSave:false,
  
  //alias别名配置
  configureWebpack: {
    resolve: {
      alias: {
        'assets': '@/assets',
        'con': '@/components',
        'views': '@/views',
      }
    }
  } //直接关闭eslint检查
}

vue-cli脚本架中,请求本地资源,数据放在public文件夹下,可以不配置。

数据请求
1.vue-resource请求
直接引用地址https://cdn.bootcdn.net/ajax/libs/vue-resource/1.3.4/vue-resource.min.js
就可以在vue实例/组件 上面绑定一个$http的一个属性。

//从vue2.0开始,将不对vue-resource进行维护,推荐使用axios  
methods:{
            get(){
                this.$http.get("./json/temp.json").then(res=>{
                    console.log(res.data.books)
                    this.books = res.data.books
                })
            }
        }

2.fetch请求

//请求的上面的public文件夹下的json文件夹下的数据
//get方法
get(){        
	fetch("/json/temp.json").then(res=>res.json()).th	en(res=>{console.log(res)})
	fetch("/json/temp.json").then(res=>res.text()).then(res=>{console.log(res)})
}
//post方法
post(){
      fetch("http://localhost:3000/add",{
         method:"post",
          headers:{
            "Content-Type":"application/x-www-form-urlencoded"
            // "Content-Type":"application/json"
         },
         // body:JSON.stringify({
         //     username:"张三",
         //     age:10
         // })
         body:"name=李四&password=111"               }).then(res=>res.json()).then(res=>console.log(res))
}

3.axios请求

// get
axios.get("json/test.json?name=zhangsan&age=10").then(res=>{
    // res.data 才是真正的后端数据
    console.log(res.data.data.films)
    this.datalist = res.data.data.films
})
//post -1- x-www-form-urlencode
axios.post("json/test.json","name=zhangsan&age=10").then(res=>{
	console.log(res.data)
})

//post -2- application/json
axios.post("json/test.json",{
    name:"zhangsan",
    age:100
}).then(res=>{
    console.log(res.data)
})
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值