DmitrMakeev commited on
Commit
6022ed8
·
verified ·
1 Parent(s): fcdf023

Update builder2.html

Browse files
Files changed (1) hide show
  1. builder2.html +50 -98
builder2.html CHANGED
@@ -1,106 +1,58 @@
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>GrapesJS with Code Editor</title>
7
- <link href="https://unpkg.com/grapesjs/dist/css/grapes.min.css" rel="stylesheet">
8
- <link href="https://unpkg.com/grapesjs-component-code-editor/dist/grapesjs-component-code-editor.min.css" rel="stylesheet">
9
- <script src="https://unpkg.com/grapesjs"></script>
10
- <script src="https://unpkg.com/grapesjs-component-code-editor"></script>
11
- <style>
12
- body, html {
13
- margin: 0;
14
- height: 100%;
15
- }
16
- #gjs {
17
- height: 100vh;
18
- }
19
- .controls-container {
20
- background-color: #302f2f;
21
- padding: 15px 0;
22
- text-align: center;
23
- }
24
- .controls-container label,
25
- .controls-container button {
26
- margin-left: 15px;
27
- }
28
- #export-html {
29
- background-color: #ccc;
30
- color: #000;
31
- border: none;
32
- padding: 10px 15px;
33
- font-size: 16px;
34
- cursor: pointer;
35
- border-radius: 5px;
36
- transition: background-color 0.3s ease;
37
- }
38
- #export-html:hover {
39
- background-color: #bbb;
40
- }
41
- .controls-container label {
42
- color: #fff;
43
- }
44
- </style>
45
  </head>
46
  <body>
47
- <div id="gjs"></div>
48
- <div class="controls-container">
49
- <button id="export-html">Скачать HTML</button>
50
- </div>
51
-
52
- <script>
53
- var editor = grapesjs.init({
54
- container: '#gjs',
55
- height: '100%',
56
- fromElement: true,
57
- storageManager: false,
58
- plugins: ['grapesjs-component-code-editor'],
59
- pluginsOpts: {
60
- 'grapesjs-component-code-editor': {
61
- panelId: 'views-container', // ID панель, куда добавляется редактор кода
62
- codeViewOptions: {
63
- theme: 'hopscotch', // Тема редактора кода
64
- }
65
- }
66
- },
67
- panels: {
68
- defaults: [
69
- {
70
- id: 'views',
71
- buttons: [
72
- {
73
- attributes: { title: 'Open Code' },
74
- className: 'fa fa-code',
75
- command: 'open-code',
76
- id: 'open-code'
77
- }
78
- ],
79
- appendTo: '.gjs-pn-views-container'
80
- }
81
- ]
82
- }
83
- });
84
 
85
- // Добавление команды 'open-code', если это необходимо
86
- editor.Commands.add('open-code', {
87
- run: function(editor) {
88
- editor.runCommand('open-code-editor');
89
- }
90
- });
91
 
92
- // Обработчик для кнопки экспорта
93
- document.getElementById('export-html').addEventListener('click', function() {
94
- var html = editor.getHtml();
95
- var css = editor.getCss();
96
- var blob = new Blob(['<html><head><style>' + css + '</style></head><body>' + html + '</body></html>'], { type: 'text/html' });
97
- var link = document.createElement('a');
98
- link.href = URL.createObjectURL(blob);
99
- link.download = 'page.html';
100
- document.body.appendChild(link);
101
- link.click();
102
- document.body.removeChild(link);
103
- });
104
- </script>
 
 
 
 
105
  </body>
106
- </html>
 
1
  <!DOCTYPE html>
2
  <html lang="en">
3
  <head>
4
+ <meta charset="UTF-8">
5
+ <title>GrapesJS Code Editor Example</title>
6
+ <link rel="stylesheet" href="https://unpkg.com/grapesjs/dist/css/grapes.min.css">
7
+ <script src="https://unpkg.com/grapesjs"></script>
8
+ <link rel="stylesheet" href="https://unpkg.com/grapesjs-component-code-editor/dist/grapesjs-component-code-editor.min.css">
9
+ <script src="https://unpkg.com/grapesjs-component-code-editor"></script>
10
+ <style>
11
+ body, html {
12
+ margin: 0;
13
+ height: 100%;
14
+ }
15
+ </style>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
16
  </head>
17
  <body>
18
+ <div id="gjs"></div>
19
+ <script type="text/javascript">
20
+ const editor = grapesjs.init({
21
+ container: '#gjs',
22
+ height: '100%',
23
+ fromElement: true,
24
+ storageManager: false,
25
+ plugins: ['grapesjs-component-code-editor'],
26
+ pluginsOpts: {
27
+ 'grapesjs-component-code-editor': {
28
+ // options
29
+ }
30
+ }
31
+ });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
32
 
33
+ // Добавляем команду для открытия редактора кода
34
+ editor.Commands.add('open-code', {
35
+ run: function(editor) {
36
+ editor.runCommand('open-code-editor');
37
+ }
38
+ });
39
 
40
+ // Добавляем кнопку для открытия редактора кода
41
+ const pn = editor.Panels;
42
+ const panelViews = pn.addPanel({
43
+ id: "views",
44
+ });
45
+ panelViews.get("buttons").add([
46
+ {
47
+ attributes: {
48
+ title: "Open Code",
49
+ },
50
+ className: "fa fa-file-code-o",
51
+ command: "open-code",
52
+ togglable: false, // Не закрывать при повторном нажатии
53
+ id: "open-code",
54
+ },
55
+ ]);
56
+ </script>
57
  </body>
58
+ </html>