前言 我们知道Vue框架剧本双向数据绑定功能,在我们使用方便的同时,还有一些细节问题我们并不知道,接下来一起探讨一些吧 双向数据绑定 js变量改变影响页面 页面改变影响js变量 Vue2是如何做到数据绑定的 Object.defineProperty(obj,key,{ set:function (newV) { val = newV; // 通知所有用到这个属性的DOM更新 dep.notifyAll(); }, get:function () { if (Dep.currentSub) {…
class中 当依赖中断的时候是绑定的red,但是这样写绑定不了, 大括号{}里可以下js代码的,下面的orange就可以绑定成功,写成双竖线 形式.…
this.webSocket.onerror =(env)=>{ this.onError(env) }; https://jsfiddle.net/dko6g9a4/1/…
在移动端的spa页面中,只要使用到了路由就很有必要使用到状态保存的功能,这样才能保证在页面进行切换的时候,让用户可以看到刚才滑动的地方,让用户的体验更加友好.这儿我找到了react-router-cache-route这个插件,使用方法直接参考文档. 在使用了这个插件以后,结合着antd-mobile使用时.会出现轮播图空白的现象,这个现象在手机端显得忧外的明显 上面问题的解决方法就是使用 react-router-cache-route 这个插件以后额外引入的声明周期,然后使用 forceUp…
引入:https://q.cnblogs.com/q/88214/ 解决方法: 添加路由监听,路由改变时执行监听方法 methods:{ fetchData(){ console.log('路由发送变化doing...'); } }, created() { var self = this; self.fetchData(); }, watch:{ '$route':'fetchData' },…
如何解决在vue中替换图片.一个使用base64,而我们使用zepto之后,src找不到资源,因为已经打包了,难道强行写base64. 1. 引入文件时语法很重要! import "FooterMenu" from '@components/Menu'; import FooterMenu from '@components/Menu'; 即在页面组件中引入一个FooterMenu组件, 我们引入时应该引入的一个变量作为标签,而不能再FooterMenu上添加引号!!  在这里浪费了很…
排行榜的歌曲列表,根据排名渲染不同的样式,同时需要考虑分辨率的2x 3x图 不同的样式--:class 考虑分辨率的2x 3x图--需要在stylu中的mixin中bgImage根据屏幕分辨率选择图片 1.功能 <div class="rank" v-show="rank"> <span :class="getRankCls(index)">{{getRankText(index)}}</span> </…
Vue中的$Bus使用 将Bus单独抽离成一个文件 Bus.js import Vue from 'vue'; let Bus = new Vue(); export default Bus; 创建两个兄弟组建 C2.vue <template> <view> <h1>c2</h1> </view> </template> <script> // 引入Bus import Bus from '@/util/Bus'; ex…
在vue中,也会遇见translate的情况,这里顺带也可以带上如何查找页面中的元素的案例. 1.在加载过程中,有会遇见加载顺序先后的问题,然后查找页面元素null的情况,所以在mounted的钩子函数当中,需要加一个计时器延缓获取的操作.代码如下: this.myTime = setTimeout(()=>{ var myel = this.$refs.mybox ? this.$refs.mybox : '' },) 在dom元素中需要加一个 <div class="wrap m…
vue中最常见的属v-model这个数据双向绑定了,很好奇它是如何实现的呢?尝试着用原生的JS去实现一下. 首先大致学习了解下Object.defineProperty()这个东东吧! * Object.defineProperty() * 对对象的属性进行 定义/修改 * */ let obj = {x:10} // 这两种方式都相对来说比较简单,直接,但是有些时候我们需要对对象的属性的修改和增加进行必要的干预 // obj.y = 20; // obj.x = 100; // obj.x =…