vue

一、vue的使用

直接用 <script> 引入
开发版本:https://cn.vuejs.org/js/vue.js

二、生命周期图示

下图展示了实例的生命周期。你不需要立马弄明白所有的东西,不过随着你的不断学习和使用,它的参考价值会越来越高。

Vue 实例生命周期

三、vue常见指令

  • {{}}
    vue一直解析数据的指令
  • v-bind: 【简写:】
    表示通知vue在渲染的 DOM 标签时,将bind绑定的属性 和 Vue 实例data中同名属性值保持一致,单项绑定
  • v-model:
    与v-bind类似, 不过数据可同步改动,双向绑定
  • v-html= {{属性}}
    会原样输出数据属性,如果说数据是带有html格式的数据时,此时需要使用v-html指令
  • v-if= 【 v-else-if= 】
    判断指令
  • v-for=
    循环指令
    v-for="item in arr"
    for="(item, index) in arr"
  • v-on【简写@】
    事件绑定指令, 可缩写成@,方法写在methods:{//所有vue实例属性,所有vue相关的函数都在这里定义}

四、vue事件

  • methods: { choseClick: function (){...}}
    @click .. 事件函数
  • $event
    事件信息封装对象: 使用 $event 标记
  • e.currentTarget
    获取事件源
  • choseClick($event,u.id,u.name)"
    事件传参,调用事件函数传入参数
    choseClick:function (e, id, name) {...}

五、vue的属性

  • el : "#app"
    用来指示vue编译器从什么地方开始解析 vue的语法
  • data:
    用来组织从view中抽象出来的属性,可以说将视图的数据抽象出来存放在data中,data:{ arr:[1,2,3] }
  • methods:
    放置页面中的业务逻辑,js函数一般都放置在methods中
  • filters:
    vue过滤器集合
dataFormat:function () {
},
sexFilter:function (sex) {
      return sex == 0? '女':'男'
}
  • mounted:function(){...}
    是一个函数,用来初始化,在vue实例创建完成后被立即调用(html加载完成后执行)

六、前后端分离

浏览器怎么发起请求

前后端分离操作流程.png

vue怎么接受处理请求

浏览器访问页面,vue的mounted 属性初始化发起跨域异步请求,调用后端暴露的接口,控制器处理返回json数据data,使用js加工,设置到vue的data:属性,通过v-for循环取出数据

vue怎么发起异步请求

mounted 属性初始化操作,发起$.get异步请求

接口服务器怎么接受并处理异步请求

控制器通过$get异步请求,调用后端暴露的接口,再通过业务方法查询出list数据后返回json数据给前端

vue怎么处理接口返回json格式结果

通过控制器出来返回json数据,使用异步请求的回调函数来接收参数,设置进vue的data属性里

七 、其他

跨域

  • mvc配置方式
@SpringBootApplication
public class MongodbApplication implements WebMvcConfigurer {

   //跨域访问
   @Bean
   public WebMvcConfigurer corsConfigurer() {
       return new WebMvcConfigurer() {
           @Override
           //重写父类提供的跨域请求处理的接口
           public void addCorsMappings(CorsRegistry registry) {
               //添加映射路径
               registry.addMapping("/**")
                       //放行哪些原始域
                       .allowedOrigins("*")
                       //是否发送Cookie信息
                       .allowCredentials(true)
                       //放行哪些原始域(请求方式)
                       .allowedMethods("GET", "POST", "PUT", "DELETE","OPTIONS")
                       //放行哪些原始域(头部信息)
                       .allowedHeaders("*")
                       //暴露哪些头部信息(因为跨域访问默认不能获取全部头部信息)
                       .exposedHeaders("Header1", "Header2");
           }
       };
   }
   public static void main(String[] args) {
       SpringApplication.run(MongodbApplication.class,args);
   }
}
  • 注解方式
    @CrossOrigin(origins = "http://localhost:8888")表示只允许这一个url可以跨域访问这个controller
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。