• legend2---开发日志5(如何解决插件的延迟问题,比如vue)


    legend2---开发日志5(如何解决插件的延迟问题,比如vue)

    一、总结

    一句话总结:元素可以先设置为隐藏,这样就不会让用户看到延迟的问题,然后等加载完再显示,

    元素先设置为隐藏 加载完再显示

    1、thinkphp解决各种方式(post传值,链接传值,get传值)传值统一的简单方式?

    读取主要 特判补充

    读取最主要的哪一种,然后进行特判补充,从而方便下面的统一编码

    1 $dataIn=input('get.');
    2 
    3 //步骤一:因为也用a标签传值过来,所以dataIn可能取不到这部分值
    4 if(input('xiulian_type')!=null&&!isset($dataIn['xiulian_type'])) $dataIn['xiulian_type']=input('xiulian_type');
    5 if(input('blog_recommend')!=null&&!isset($dataIn['blog_recommend'])) $dataIn['blog_recommend']=input('blog_recommend');
    6 if(input('finished_question')!=null&&!isset($dataIn['finished_question'])) $dataIn['finished_question']=input('finished_question');

    2、php变量转js变量时候的注意事项是什么?

    字符串变量加引号 打印变量

    如果是字符串变量必须加引号表示是字符串,而且最好打印变量,防止错误

    question_space_type="{$question_list['info']['question_space_type']}";

    3、php传值给js变量比较好的策略是什么?

    用json 传过去的数据做全局变量

    用json,整数组传,而且这些变量有时候传成全局变量比较方便,分开写的好处是可加注释,如下

     1         //===========题目列表信息全局变量
     2         //做题目对应的url
     3         url="{:url('index/blog.do_question/index')}";
     4         //显示的题目的编号
     5         showQuestionNum={$question_list['info']['now_question_num']};
     6         //题目总数
     7         totalQuestionNum={$question_list['info']['question_num']};
     8         //博客题目类型-question_space_type(推荐,全库,一日,多日,收藏)
     9         question_space_type="{$question_list['info']['question_space_type']}";
    10         //修炼类别-xiulian_type(灵气,心境,功法,炼丹,炼器,炼符,阵法,傀儡,种植,育兽,占卜)
    11         xiulian_type={$question_list['info']['xiulian_type']};
    12         //博客题目顺序方式-question_order_type(推荐,顺序,随机,作对最少)也是博客题目类型对应的值,因为键值对可以一次传两个值
    13         question_order_type={$question_list['info']['question_order_type']};
    14         //博客对应的日期-question_date
    15         question_date="{$question_list['info']['question_date']}";
    16         //英雄的id-hero_id-当为英雄修炼而不是宗门修炼的时候,为0表示是宗门修炼
    17         hero_id="{$question_list['info']['hero_id']}";

    4、页面端的函数是否有存在的意义?

    没有 其实完全可以被替代 处理好数据后再传页面

    页面上的php函数肯定是可以用模型中的php函数代替,也就是处理好了数据再传到页面,让页面无需做php的处理

    5、写注释的好的方式?

    [变量]-变量或者核心部分用显眼的中括号括起来 分步骤写-用显眼的中文

    变量用中括号括起来,步骤用汉字步骤表示

    1 //步骤五:根据【修炼类型的经验值数值】和【当前等级经验值上限】获取【经验值的百分比】

    6、网页版应用如何减少服务器负载?

    计算任务扔给客户端 核心计算仍然要在服务器上

    计算任务可以都扔给客户端,服务器没必要做复杂的计算,可以只负责传入传出数据就好

    7、html中用内联的display: none;会出现标签延迟加载的情况么,用js控制的显示隐藏会出现延迟么

    内联的不会 js控制的会

    用js出现延迟加载的情况是因为要加载完html才运行js,所以会有延迟,而内联标签和html的加载应该是同时,所以不会,

    8、thinkphp框架配合vue无延迟加载的策略是什么?

    thinkphp改变display属性 vue通过v-show改变display属性 display属性做中介 加载完再显示

    thinkphp改变display属性,vue通过v-show来控制的display是否为none,而且可以选择加载完再显示,这样效果好很多

    1 <div style="color: red;{if condition='$vo.bq_collected<=0'}display: none;{/if}">
    2     <i class="fa fa-fw fa-heart"></i>
    3 </div>
    4 <div style="{if condition='$vo.bq_collected>0'}display: none;{/if}">
    5     <i class="fa fa-fw fa-heart-o"></i>
    6 </div>

    9、如何解决vue的延迟问题,不让用户看到这种延迟(比如底部经验条)?

    元素先设置为隐藏 加载完再显示

    元素可以先设置为隐藏,这样就不会让用户看到延迟的问题,然后等加载完再显示,

    10、如何让标签加载完再显示(比如当加载文件多时去掉vue的延迟显示效果)?

    先display:none  放在$()中 .show设置为显示

    先设置display:none; 再在加载完成函数中$()添加让标签显示的class,比如bootstrap的.show

    <!--底部经验固定条-->
    <div style="position: fixed;bottom: 0; 100%;font-size: 10px;display: none;" id="bottom_exp_bar">
        $(function () {
            $('#bottom_exp_bar').addClass('show');
        });

    二、内容在总结中

    1、相关知识

     

    2、代码

     
  • 相关阅读:
    JPEG compression
    GPU编程库
    亚马逊AWS服务器CentOS/Linux系统Shell安装Nginx及配置自启动
    如何查看mac系统是32位还是64位的操作系统
    mac解压7z格式文件
    vi中跳到文件的第一行和最后一行
    docker学习记录
    git 比较两个分支不同的commit
    meta property=og标签含义及作用
    php发现一个神奇的函数
  • 原文地址:https://www.cnblogs.com/Renyi-Fan/p/10657540.html
Copyright © 2020-2023  润新知