美文网首页
2019-01-16 vue.js中的注意事项

2019-01-16 vue.js中的注意事项

作者: jakeliukai | 来源:发表于2019-01-17 16:32 被阅读0次

    一、vue 中滚轮滚动监听事件
    <script>

        export default {

          name:"vue-scroll",

          data () {

            return {

              ……

            }

          },

          mounted: function () {

            window.addEventListener('scroll', this.handleScroll, true);  // 监听(绑定)滚轮滚动事件

          },

          methods: {

            handleScroll: function () {

                let clientHeight = document.documentElement.clientHeight || document.body.clientHeight; 

                // 设备/屏幕高度

                let scrollObj = document.getElementById(div); // 滚动区域

                let scrollTop = scrollObj.scrollTop; // div 到头部的距离

                let scrollHeight = scrollObj.scrollHeight; // 滚动条的总高度

                //滚动条到底部的条件

                if(scrollTop+clientHeight == scrollHeight){

                    // div 到头部的距离 + 屏幕高度 = 可滚动的总高度

                } 

            }

          },

          destroyed: function () {

            window.removeEventListener('scroll', this.handleScroll);  //  离开页面清除(移除)滚轮滚动事件

          }

        }

    </script>

    二、获取、修改vuex 状态管理器中的值

    获取应用

    方法一:

    在computed中定义一个方法,并return出state对象中的属性及其状态:

    title 可以直接当全局变量用{{title}}

     computed:{

    title(){

        return  this.$store.state.title

    }

            }

    方法二:

    利用vuex的mapState方法来获取vuex的state对象中属性

    title 可以直接当全局变量用{{title}}

    import { mapState } from 'vuex'

    export default {

        computed: {

                //获取仓库里的title

                ...mapState(['title'])

            },

    }

    修改应用

    方法一:this.$store.commit('updateTitle',res.film.name)

    方法二:this.$store.dispatch('updateTitle', res.film.name)

    相关文章

      网友评论

          本文标题:2019-01-16 vue.js中的注意事项

          本文链接:https://www.haomeiwen.com/subject/nxlmdqtx.html