VSCode+Vue+Axios编写HelloWorld项目源码


VSCode+Vue+Axios-开发框架文库

VSCode+Vue+Axios编写HelloWorld项目源码

一、前端源码修改

main.js

JavaScript 全选
// The Vue build version to load with the `import` command
// (runtime-only or standalone) has been set in webpack.base.conf with an alias.
import Vue from 'vue'
import App from './App'
import axios from 'axios'
import Routers from './router'
import VueRouter from 'vue-router'

Vue.use(VueRouter)
Vue.config.productionTip = false
Vue.prototype.axios = axios

/* eslint-disable no-new */
new Vue({
  el: '#app',
  router: Routers,
  components: {
    App
  },
  template: '<App/>'
})

App.vue

HTML 全选
<template>
  <div id="app">
    <h1>{{msg}}</h1>
    <div id="test">
      <span>通过Axios调用Api接口返回数据:</span>
      <div>
       Code: {{code}}<br>
       Name: {{name}}
      </div>
    </div>
  </div>
</template>

<script>
/* eslint-disable */
export default {
  name: "hello",
  data() {
    return {
      code: "",
      name: "",
      msg: "HELLO WORLD!,this is my first project!",
    };
  },
  created() {
    this.loadData();
  },
  mounted() {},
  beforeDestroy() {},
  methods: {
    loadData() {
      var _T = this;
      this.axios
        .post("/api/get.aspx")        
        .then(function (res) {
          _T.code = res.data.code;
          _T.name = res.data.name;
        })
        .catch(function (res) {
          console.log(res);
        });
    },
  },
};
</script>
<style>
#app {
  font-family: "Avenir", Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-align: center;
  color: #2c3e50;
  margin-top: 60px;
}
</style>

二、CORS跨域问题导致无法访问API

原因分析

本测试案例调用服务端Api接口,因开发环境的http地址与服务器IP地址、端口不同,导致CORS跨域访问:

前端服务:http://localhost:8080/#/

后端服务:http://localhost:4618/api/get.aspx

CORS error 跨域访问Api接口失败

VSCode+Vue+Axios编写HelloWorld项目源码

解决方案:添加 proxyTable

在index.js添加源码

JavaScript 全选
}module.exports = {
  dev: {

    // Paths
    assetsSubDirectory: 'static',
    assetsPublicPath: '/',
    proxyTable: {
      '/api': {
        target: 'http://localhost:4618', //请求域名
        //secure: false, // 如果是https接口,需要配置这个参数
        changeOrigin: true, //如果是跨域访问,需要配置这个参数
        pathRewrite: {
          '^/api': ''
        }
      }
    }
}

 

使用Axios访问Api接口,给前端页面赋值

JavaScript 全选
<script>
/* eslint-disable */
export default {
  name: "hello",
  data() {
    return {
      code: "",
      name: "",
      msg: "HELLO WORLD!,this is my first project!",
    };
  },
  created() {
    this.loadData();
  },
  mounted() {},
  beforeDestroy() {},
  methods: {
    loadData() {
      var _T = this;
      this.axios
        .post("/api/get.aspx")        
        .then(function (res) {
          _T.code = res.data.code;
          _T.name = res.data.name;
        })
        .catch(function (res) {
          console.log(res);
        });
    },
  },
};
</script>

 

三、服务端 ASP.NET 

cscode_get.aspx

C# 全选
public partial class cscode_get : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (this.IsPostBack) return;

        if (this.Request.RequestType == "POST")
        {
            try
            {
                MyPerson p = new MyPerson
                {
                    code = "C000001",
                    name = "VUE",
                };

                var json = JsonConvert.SerializeObject(p);
                this.Response.ContentType = "application/json";
                this.Response.Write(json);

            }
            catch (Exception ex)
            {
                this.DoResponse("PageLoad:内部异常!");
            }
        }
    }
}

MyPerson模型

C# 全选
    public class MyPerson
    {
        public string code { get; set; }
        public string name { get; set; }
    }

 

四、运行前端测试

打开命令行,输入:

npm run dev

VSCode+Vue+Axios编写HelloWorld项目源码

 

图片

高效开发.追求卓越-开发框架文库

版权声明:本文为开发框架文库发布内容,转载请附上原文出处连接
C/S框架网
评论列表

发表评论

评论内容
昵称:
关联文章

VSCode+Vue+Axios编写HelloWorld项目
使用Vue+VSCode新建HelloWorld项目
Vue+VsCode输出HelloWorld项目项目结构解析
VSCode开发Vue项目文件目录结构说明
VSCode开发:NPM/Vue命令大全
Web开发框架-VUE使用Axios调用后台WebAPI接口
WEB开发框架开发环境:VSCode+VUE+Element UI
VSCode+VUE+Element-UI学习资料大全
MIS-管理信息系统-调查队数据仓库项目
.Net项目(C#+VS)成功案例展示中心 | C/S框架网
软件开发与设计 - MIS-管理信息系统-调查队数据仓库项目
Vue启动自定义页面,Editor.vue
VSCode配置C#运行环境教程,vscode配置c#
软件开发与设计 - MIS-管理信息系统-产品管理系统(三层结构示例项目)
Vue开发笔记大全
Vue+Element-UI客户管理页面查询功能实现
解决VSCode缺失右键弹出菜单打开项目
vue项目根目录下index.html中的id="app",与src目录下的App.vue中的id="app"是否冲突?
VS2015管理器-GIT克隆与提交基本操作
Vue el: '#app' 与 .$mount('#app')区别,#app作用