preview.html 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. <!doctype html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8" />
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  6. <title>加载中...</title>
  7. <link href="preview.css" rel="stylesheet" />
  8. <link href="loader.css" rel="stylesheet" />
  9. <style>
  10. html,
  11. body {
  12. margin: 0;
  13. padding: 0;
  14. }
  15. </style>
  16. </head>
  17. <body>
  18. <div class="loader-container">
  19. <div></div>
  20. <div></div>
  21. <div></div>
  22. <div></div>
  23. <div></div>
  24. <div></div>
  25. <div></div>
  26. </div>
  27. <div class="editor-generate-preview-wrapper">
  28. <div class="header"></div>
  29. <div class="content w-e-text-container"></div>
  30. <div class="footer"></div>
  31. </div>
  32. <script>
  33. // const host = `./mock.json`;
  34. /* 渲染 header 和 footer */
  35. function render() {}
  36. async function load() {
  37. try {
  38. // if (!host) throw { message: `请求地址为空` };
  39. const hashParams = location.hash.split('?')[1];
  40. const queryString = location.search || (hashParams ? `?${hashParams}` : '');
  41. // alert('queryString: ' + queryString);
  42. const request = await fetch(`${location.origin}/manager/fdhb-mobile/psarticle/getPsarticleDetailById${queryString}`);
  43. if (!request.ok) {
  44. throw new Error(`请求失败: ${request.status}`);
  45. }
  46. const result = await request.json();
  47. if (!result.success || result.code !== 200) {
  48. throw new Error(result.msg || '请求未成功');
  49. }
  50. // alert('request status: ' + request.status + ', ok: ' + request.ok);
  51. // alert('request: ' + result);
  52. const data = result.data;
  53. // alert('result: ' + data.title);
  54. document.title = data.title || `加载完成`;
  55. document.querySelector('.w-e-text-container').innerHTML = decodeURIComponent(data?.content) || `暂无内容`;
  56. render(data);
  57. } catch (e) {
  58. document.querySelector('.w-e-text-container').innerHTML = e.message || `请求未成功`;
  59. } finally {
  60. document.querySelector('.loader-container').style.display = 'none';
  61. }
  62. }
  63. document.addEventListener('DOMContentLoaded', load);
  64. </script>
  65. </body>
  66. </html>