VersionHistoryPage.vue 1.7 KB

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