用原生JavaScript实现了一个分页,但是不知道有什么可能的缺陷以及可以改进的地方?

最近在尝试用原生js开发自己的轮子,第一个项目是分页,但是因为不太熟悉原生js插件的封装模式,想请大家帮忙看看我这种写法规不规范呢?还有就是分页逻辑的封装,在现有的基础上可以优化的地方?
https://github.com/csd7583715...

阅读 1.1k
评论
    5 个回答
    • 12.2k

    原生分页最大的问题就是你得把所有数据都加载到本地然后分页吧,时间成本和服务器成本都高,所以不太实用。

      1. 分页建议还是放到后端比较好一些,起码不会因为整体数据量的多寡,而造成用户体验上的差异;另外,也有一部分数据安全方面的考虑,整体加载就意味着吐所有的数据,做爬虫的都省事了不是?
      2. 封装可以用UMD,比如这个项目elf-preloader.js里的这种写法,可以参考。
        • 597

        1,你用的id一个页面里只会有一个分页吗?
        2,你每次都render虽然比较原生。但也有不需要render的时候吧。
        3,我也没做过什么开源的库,你这个开源的优势在哪?好多都是大套件的方式。mvvm框架很容易就能实现。

          • 1.4k

          简单看了一下,自己资历尚浅,只能谈谈一些个人见解

          1. npm install 之后还要用标签去引入,感觉不太符合现代的一些构建开发方式。这种snippet方式的组件到最后总不可能都通过cdn link方式一个一个引入,虽然HTTP2这个就不是问题了,但是现阶段还是需要考虑的。需要做一些模块化的工作,支持直接import。可以用webpack打包一下,既可以支持直接link src也能支持现代的模块化方案。
          2. 代码层面上的组织结构,可能现在代码量不多,不需要分为好几个文件。但是这样看起来并不太清晰,page.js里可以把util等一些工具和page的一些逻辑抽离到单js里然后引入进来,不妨碍自己page.js的应该具有的自己逻辑
          3. 代码内容上,通用ui组件,不建议使用id去标记,也不建议使用太通用的名字来定义class,因为一不小心就有可能产生css样式覆盖,导致bug。其次不知道有没有感觉直接写html字符串的方法不太好,我还是觉得用dom api和fragment来操作更佳一些,以便可以封装一些自己需要的常规操作,而不是每次都写一堆html字符串
            • 531

            比如一共有30条数据,每页显示10条,正好显示3页。但是当你添加一条数据,需要显示在第四页的时候,页码不一定会更新。

              撰写回答

              登录后参与交流、获取后续更新提醒

              相似问题
              推荐文章