• vue之数据请求方式


    vue之数据请求方式

    1. vue-resource

    2.axios

    3.fetch-jsonp

    一、vue-resource

    1. 安装vue-resource

    在项目根目录进行安装:cnpm install vue-resource --save

    save说明:将此插件名插入到pachage.json文件中,别人在使用时,直接npm install,就会安装package.json里的所配置的软件插件名称了。

    2.引入vue-resource

    在main.js中引入这个插件,并使用这个插件

    import VueResource from 'vue-resource'
    
    #引入插件,VueResource 是别名 ;vue-resource 是我们下载的插件

    Vue.use(VueResource );
    #使用插件
     

    3.使用示例:

    <template>
      <div>
        <p>vue-resource方式</p>
        <button @click="getData()">resource</button>
        <hr />
        <ul>
          <li v-for="item in list">
            {{item.title}}
          </li>
        </ul>
      </div>
    </template>
    
    
    <script>
      export default {
        name: "app",
        data() {
          return {
            list:[]
          }
        },
        methods:{
          getData(){
            //请求数据
            var api = 'http://www.phonegap100.com/appapi.php?a=getPortalList&catid=20&page=1';
            this.$http.get(api).then(function (response) {
              console.log(response)
              //注意this指向
              this.list = response.body.result;
            },function (err) {
              console.log(err)
            })
          }
        }
      }
    </script>

    结果:

    二、axios

    1.安装axios

    在项目根目录进行安装:cnpm install axios --save

    2.引入axios

    在哪个.vue文件里使用就在哪里引入,例如我在App.vue里使用,就在App.vue里引入,注意要在script标签开始处引入。

    import Axios from 'axios';

    3.使用示例

    <template>
      <div>
        <p>vue-resource方式</p>
        <button @click="getData()">resource</button>
        <hr />
        <ul>
          <li v-for="item in list">
            {{item.title}}
          </li>
        </ul>
      </div>
    </template>
    
    
    <script>
      import Axios from 'axios';
    
      export default {
        name: "app",
        data() {
          return {
            list:[]
          }
        },
        methods:{
          getData(){
            //请求数据
            var api = 'http://www.phonegap100.com/appapi.php?a=getPortalList&catid=20&page=1';
            Axios.get(api).then((response)=> {
              console.log(response);
              this.list = response.data.result;
            }).catch((error)=>{
              console.log(error);
            })
          }
        }
      }
    </script>

     结果:

    三、fetch-jsonp

    1.安装

    在项目根目录进行安装:cnpm install fetch-jsonp --save

    2.引入

    在哪个.vue文件里使用就在哪里引入,例如我在App.vue里使用,就在App.vue里引入,注意要在script标签开始处引入。

    3.使用示例

    <template>
      <div>
        <p>vue-resource方式</p>
        <button @click="getData()">resource</button>
        <hr />
        <ul>
          <li v-for="item in list">
            {{item.title}}
          </li>
        </ul>
      </div>
    </template>
    
    
    <script>
      import FetchJsonp from 'fetch-jsonp';
    
      export default {
        name: "app",
        data() {
          return {
            list:[]
          }
        },
        methods:{
          getData(){
            //请求数据
            var api = 'http://www.phonegap100.com/appapi.php?a=getPortalList&catid=20&page=1';
            FetchJsonp(api).then((response)=>{
              return response.json()
            }).then((json)=>{
              console.log('parsed json',json)
              this.list = json.result;
            }).catch((ex)=>{
              console.log('parsing failed',ex)
            })
          }
        }
      }
    </script>

    结果:

  • 相关阅读:
    C语言学习趣事_19_C参考手册连接
    2_Windows下利用批处理文件获取命令行命令帮助信息
    C语言学习趣事_FILE_TYPE
    清华大学出版社版_Windows程序设计_方敏_不足_3
    Windows程序设计零基础自学_14_Windows文件和目录操作
    3_Windows下利用批处理文件_去除C源代码中指示行号的前导数字
    随想_7_Windows_7_Visual_Studio_2008_问题
    C语言小算法_1_数值转换
    C语言学习趣事_20_Assert_Setjmp
    C语言学习趣事_20_关于数组名与指针的讨论
  • 原文地址:https://www.cnblogs.com/zhangjunkang/p/10147357.html
Copyright © 2020-2023  润新知