Flask - Bootstrap | 界面加载缓慢问题优化

  • Flask-Bootstrap是Flask的一个页面样式类插件,通常我们使用pip进行安装并导入使用。
    pip install flask-bootstrap
    
    当我们在Flask工程中使用flask_bootstrap时,其实每次访问页面的时候它还是在动态向bootstrap源进行请求并下载,由于这些资源连接都是非国内链,所以一般会比较慢,甚至会超时。但其实这些资源早在国内都有相应的CND链,所以我们只需要把引用切换到国内指向即可。
  1. 默认使用时可能会超时,界面狂转,看一下前台,瞬间明白了:
  2. 我们一个参数(BOOTSTRAP_SERVE_LOCAL),让它加载本地的资源包
     app = Flask(__name__)
     app.config['BOOTSTRAP_SERVE_LOCAL'] = True
     app.run()
    
    我们会发现,它直接加载本地的资源了,速度“嘎”的以下就上来了,当然也要注意一点,它加载的还是python第三方库flask-bootstrap中的static内容,并不需要我们去下载上传指定路径,见下图:

  3. 到2其实就可以了,当然你可以不用2的方法,而直接改bootstrap的各类资源链接源:
    找到Pyhton资源包中的bootstrap,并将__init__.py中的内容做调整
    # bootstrap = lwrap(
    #    WebCDN('//cdnjs.cloudflare/ajax/libs/twitter-bootstrap/%s/' %
    #            BOOTSTRAP_VERSION), local)
    #
    # jquery = lwrap(
    #     WebCDN('//cdnjs.cloudflare/ajax/libs/jquery/%s/' %
    #            JQUERY_VERSION), local)
    #
    # html5shiv = lwrap(
    #     WebCDN('//cdnjs.cloudflare/ajax/libs/html5shiv/%s/' %
    #            HTML5SHIV_VERSION))
    #
    # respondjs = lwrap(
    #     WebCDN('//cdnjs.cloudflare/ajax/libs/respond.js/%s/' %
    #            RESPONDJS_VERSION))
    
    bootstrap = lwrap(
        WebCDN('//cdn.bootcss/bootstrap/%s/' % BOOTSTRAP_VERSION), local)
    
    jquery = lwrap(
        WebCDN('//cdn.bootcss/jquery/%s/' % JQUERY_VERSION), local)
    
    html5shiv = lwrap(
        WebCDN('//cdn.bootcss/html5shiv/%s/' % HTML5SHIV_VERSION))
    
    respondjs = lwrap(
        WebCDN('//cdn.bootcss/respond.js/%s/' % RESPONDJS_VERSION))
    

    就这么多,有需要的记得点个收藏,不然就找不到了

更多推荐

Flask | Bootstrap | 界面加载缓慢问题优化