PluginsBase.php 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. <?php
  2. namespace app;
  3. use app\model\CardModel;
  4. use think\App;
  5. use think\View;
  6. class PluginsBase
  7. {
  8. public ?View $view = null;
  9. public ?\think\Request $request = null;
  10. function __construct(App $app)
  11. {
  12. $this->request = $app->request;
  13. // 视图对象
  14. $this->view = new View($app);
  15. $this->_initialize();
  16. }
  17. function _initialize(){
  18. }
  19. function assign($key, $view)
  20. {
  21. $this->view->assign($key, $view);
  22. }
  23. function fetch($view, $opt = []): string
  24. {
  25. $view = plugins_path("view/" . $view);
  26. return $this->view->fetch($view, $opt);
  27. }
  28. public function success($msg, $data = []): \think\response\Json
  29. {
  30. if (is_array($msg)) {
  31. return json(['msg' => '', 'code' => 1, 'data' => $msg]);
  32. }
  33. return json(['msg' => $msg, 'code' => 1, 'data' => $data]);
  34. }
  35. public function error($msg, $data = []): \think\response\Json
  36. {
  37. if (is_array($msg)) {
  38. return json(['msg' => '', 'code' => 0, 'data' => $msg]);
  39. }
  40. return json(['msg' => $msg, 'code' => 0, 'data' => $data]);
  41. }
  42. }