legend2---开发日志9(vue常见无法自动更新改变的原因是什么)
legend2---开发日志9(vue常见无法自动更新改变的原因是什么)
一、总结
一句话总结:没找到变量,比如在computed属性中vue的变量没加this
没找到变量
1、函数中var bottom_exp_bar_vm = new Vue()这句代码中js中找不到bottom_exp_bar_vm 的原因是什么?
函数中带var的变量是局部变量
局部变量函数外找不到
函数中带var的变量是局部变量,函数外肯定找不到
2、觉得工作量很多怎么解决(比如妖族的图片)?
编号
可以编号即可,这样能够很清晰的知道流程,还有完成进度和成就感
3、vue如何自动读秒(比如免费招募时间的自动更新)?
computed属性配合setInterval()
让表示js当前时间戳的变量自动变化
computed属性配合setInterval() 让表示js当前时间戳的变量自动变化
<script>
$(function () {
//控制【弹出奖励的】的vue代码
main_content = new Vue({
el: '#main_content',
data: {
heroes: window.heroes,
school_time: window.school_time,
template_hero_collections: window.template_hero_collections,
js_ts:new Date().getTime(),
},
computed: {
// 投奔英雄的【免费刷新】时间计算
st_recruit_touben_time: function () {
// `this` 指向 vm 实例
var time1=0;
var php_ts=school_time.st_recruit_touben;
if(((php_ts+1)*1000-this.js_ts)>=0) time1=(php_ts+1)*1000-this.js_ts;
return get_hms(time1);
},
// 低级招募英雄的【免费一次】时间计算
st_recruit_low_time: function () {
// `this` 指向 vm 实例
var time1=0;
var php_ts=school_time.st_recruit_low;
if(((php_ts+1)*1000-this.js_ts)>=0) time1=(php_ts+1)*1000-this.js_ts;
return get_hms(time1);
},
// 高级招募英雄的【免费一次】时间计算
st_recruit_high_time: function () {
// `this` 指向 vm 实例
var time1=0;
var php_ts=school_time.st_recruit_high;
if(((php_ts+1)*1000-this.js_ts)>=0) time1=(php_ts+1)*1000-this.js_ts;
return get_hms(time1);
},
}
});
//刷新js_ts
setInterval(function () {
main_content.js_ts=new Date().getTime();
},1000);
console.log(main_content.school_time);
console.log(parseInt((new Date()).getTime()/1000));
$('#main_content').show(); });
</script>
4、vue对于v-if中的内容会自动刷新么,比如招募时免费按钮的显示?
对于v-if中的会自动刷新
对于v-if中的会自动刷新,computed属性里面想自动刷新的话加一个setInterval即可,保证computed里面的vue变量加this
<a v-if="school_time.st_recruit_high>parseInt((new Date()).getTime()/1000+1)" onclick="recruit_hero(2,1)" class="btn btn-primary btn-xs recruit_hero">招募一次</a>
5、宗门时间表、宗门灵石表等表怎么处理节约数据库操作时间(从缓存方面思考)?
在base控制器中把对应表的id放进session
其实可以把宗门对应的时间表,灵石表的id都读到基础控制器base里面,也就是把对应的id放进session里面,这样每次找的时候可以直接从找id来从查找数据,而不用其它比如宗门id这样的条件
6、vue的computed的getter和setter方法的作用是什么?
getter是别人发生改变自己跟着变
setter是自己发生改变也让别人跟着变
7、vue计算属性变量书写需要注意什么?
computed中的vue中的变量一定要带this
computed中的vue中的变量一定要带this,这时候this表示vue,不然可能找不到
8、vue计算属性computed触发条件的依赖变量最好怎么写(data的属性改变,但是是根据data的属性做的computed,想要保住computed更新,最好怎么做)?
计算属性中依赖的vue变量最好是后面改变要更新的
计算属性中依赖的vue变量最好是后面改变要更新的,比如计算属性中依赖的是data,那么更新就更新data,同理如果是data的某个属性
9、函数的传入参数名怎么写才好?
写的见名知意
写的见名知意,这样就不用看参数注释了
10、服务器给ajax返回是否成功用什么好(用数字好还是用true,false好)?
用数字好 不同的success_num表示不同成功或者失败的原因
用success_num,不同的success_num表示不同成功或者失败的原因
二、内容在总结中
1、相关知识
2、代码
legend2---开发日志9(vue常见无法自动更新改变的原因是什么)的更多相关文章
- CMDB资产管理系统开发【day26】:实现资产自动更新
1.需求分析 1.比对分析 比对的时候以那个数据源为主? old [1,2,3 ] db数据库 new [2,3,4 ] 客户端汇报过来的 当然以客户端汇报过来的数据为主 2.更新分析 不同的表到底拿 ...
- Cordova webapp实战开发:(5)如何写一个Andorid下自动更新的插件?
在 <Cordova webapp实战开发:(4)Android环境搭建>中我们搭建好了开发环境,也给大家布置了调用插件的预习作业,做得如何了呢?今天我们来学一下如何自己从头建立一个And ...
- SVN----------项目服务器上的svn客户端自动更新设置。
1.局域网服务器上搭建了PHP项目运行的环境,然后怎么样讲根目录拉去到的项目可以随着开发人员提交的代码,自动更新成最新的代码. 2.首先将svn版本库上的代码拉取到www目录下或者你的根目录. 3.然 ...
- android使用友盟第三方自动更新/手动更新
最近项目用到自动更新,发现一个方便快捷的第三方组件非常好用,只需要几行代码搞定,非常适合新手使用.分享给大家一起学习. 本文档帮助您以最快速最简洁的方式集成使用自动更新组件. 一.申请友盟开发者账号创 ...
- vue常见开发问题整理
1.(webpack)vue-cli构建的项目如何设置每个页面的title 在路由里每个都添加一个meta [{ path:'/login', meta: { title: '登录页面' }, com ...
- python 全栈开发,Day91(Vue实例的生命周期,组件间通信之中央事件总线bus,Vue Router,vue-cli 工具)
昨日内容回顾 0. 组件注意事项!!! data属性必须是一个函数! 1. 注册全局组件 Vue.component('组件名',{ template: `` }) var app = new Vue ...
- U-Learning 后端开发日志(建设中...)
目录 U-Learning--基于泛在学习的教学系统 项目背景 技术栈 框架 中间件 插件 里程碑 CentOS 7搭建JAVA开发环境 接口参数校验(不使用hibernate-validator,规 ...
- Android开发面试经——6.常见面试官提问Android题②(更新中...)
版权声明:本文为寻梦-finddreams原创文章,请关注:http://blog.csdn.net/finddreams 关注finddreams博客:http://blog.csdn.net/fi ...
- Android开发面试经——5.常见面试官提问Android题①
版权声明:本文为寻梦-finddreams原创文章,请关注:http://blog.csdn.net/finddreams 关注finddreams博客: http://blog.csdn.net/f ...
随机推荐
- linux homebrew skill 技巧
$ cat /usr/bin/gitdiffH0#!/bin/bashgit diff HEAD $(git ls-files| grep '\.py$\|\.py\.in$') | osflake8 ...
- 监控mysql状态脚本
监控mysql状态, 发现宕后, 自动重启, 每秒检查一次. check.sh #!/bin/bash while [ true ]; do /bin/sleep 1 sh mysql_status. ...
- 【Python57--正则1】
一.正则表达式匹配IP地址 1.search()方法:用于在字符串中搜索正则表达式模式第一次出现的位置 >>> import re >>> re.search(r' ...
- 学习Struts2的个人疑惑及问题解决
刚开始学习SSH框架中Struts2时,个人疑惑以及一些问题总结一下. 1.package节点namespace属性值决定访问路径问题 namespace不写或写namespace=&qu ...
- Junit的套件使用
定义一个类,在类的上方添加@RunWith(Suite.class)和@SuiteClasses({XX.class,YY.class,...}) 实例有两个类分别为:public class Log ...
- 清理sqlserver 2012 日志文件
http://www.cnblogs.com/q149072205/p/4380944.html 1.先把数据库设置为简单模式(右击数据库名->点'属性'->点'选项'->恢复模式改 ...
- Python3基础 dict 创建字典 空字典
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda ...
- 关于BOARD_SYSTEMIMAGE_PARTITION_SIZE【转】
本文转载自:https://blog.csdn.net/ttxgz/article/details/7542380 1. 系统需要,把需要预置在系统的所有apk放在目录 device/softwinn ...
- php的缓冲/缓存 js对象 ,php编程的深入思考-1
proto- 表示前缀, 表示"原始的, 主要的, 原型的, 最初的. 所以 prototype: 是原型的意思. webserver服务器apach, 的角色,就像一个 仓库/仓库保管员而 ...
- ssm项目中 数据库和资源的备份
备份 备份很重要 数据库的备份 mysqldump -u用户名 -p密码 所需要备份的数据库 > ~/backup/sql/o2o`date +%Y%m%d%H%M%S`.sql 资源的备份 t ...