VersionHistoryPage.vue 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. <template>
  2. <div id="versionHistoryPage" class="page">
  3. <span class="text-h6 text-bold">История версий:</span>
  4. <br><br>
  5. <span v-for="(item, index) in versionHeader" :key="index" class="clickable" @click="showRelease(item)">
  6. <p>
  7. {{ item }}
  8. </p>
  9. </span>
  10. <br>
  11. <div v-for="item in versionContent" :id="item.key" :key="item.key">
  12. <span v-html="item.content"></span>
  13. <br>
  14. </div>
  15. </div>
  16. </template>
  17. <script>
  18. //-----------------------------------------------------------------------------
  19. import vueComponent from '../../../vueComponent.js';
  20. import {versionHistory} from '../../versionHistory';
  21. class VersionHistoryPage {
  22. versionHeader = [];
  23. versionContent = [];
  24. created() {
  25. }
  26. mounted() {
  27. let vh = [];
  28. for (const version of versionHistory) {
  29. vh.push(version.header);
  30. }
  31. this.versionHeader = vh;
  32. let vc = [];
  33. for (const version of versionHistory) {
  34. vc.push({key: version.header, content: 'Версия ' + version.header + version.content});
  35. }
  36. this.versionContent = vc;
  37. }
  38. showRelease(id) {
  39. let el = document.getElementById(id);
  40. if (el) {
  41. document.getElementById('versionHistoryPage').scrollTop = el.offsetTop;
  42. }
  43. }
  44. }
  45. export default vueComponent(VersionHistoryPage);
  46. //-----------------------------------------------------------------------------
  47. </script>
  48. <style scoped>
  49. .page {
  50. padding: 15px;
  51. overflow-y: auto;
  52. font-size: 120%;
  53. line-height: 130%;
  54. position: relative;
  55. }
  56. p {
  57. line-height: 15px;
  58. }
  59. .clickable {
  60. color: blue;
  61. text-decoration: underline;
  62. cursor: pointer;
  63. }
  64. </style>