uniapp,h5

12345678910111213141516171819202122
  1. class Redprint:
  2. def __init__(self, name):
  3. # name 是指视图类
  4. self.name = name
  5. # mound 是绑定路由方法 有多个
  6. self.mound = []
  7. # 重写路由 定义装饰器
  8. def route(self, rule, **options):
  9. def decorator(f):
  10. self.mound.append((f, rule, options))
  11. return f
  12. return decorator
  13. # 进行注册,传入蓝图和默认前缀
  14. def register(self, bp, url_prefix=None):
  15. if url_prefix is None:
  16. url_prefix = '/'+ self.name
  17. for f, rule, options in self.mound:
  18. endpoint = options.pop("endpoint", f.__name__)
  19. bp.add_url_rule(url_prefix+rule, endpoint, f, **options)