Browse Source

Add setComponents method to the editor

pull/36/head
Artur Arseniev 10 years ago
parent
commit
a910d42eee
  1. 18
      src/editor/main.js
  2. 12
      test/specs/grapesjs/main.js

18
src/editor/main.js

@ -63,6 +63,16 @@ define(function (require){
return editorModel.get('Components').getComponents();
},
/**
* Set components inside editor's canvas. This method overrides actual components
* @param {Array<Object>|Object|string} components HTML string or components model
* @return {this}
*/
setComponents: function(components){
editorModel.setComponents(components);
return this;
},
/**
* Returns style in JSON format object
* @return {Object}
@ -71,6 +81,14 @@ define(function (require){
return editorModel.get('CssComposer').getRules();
},
/**
* Returns selected component, if there is one
* @return {grapesjs.Component}
*/
getSelected: function(){
return editorModel.getSelected();
},
render: function() {
return editorView.render().$el;
},

12
test/specs/grapesjs/main.js

@ -83,6 +83,18 @@ define(['GrapesJS', 'PluginManager', 'chai'],
editor.getStyle().length.should.equal(2);// .test3 is still here
});
it('Set components as HTML', function() {
var editor = obj.init(config);
editor.setComponents(htmlString);
editor.getComponents().length.should.equal(2);
});
it('Set components as array of objects', function() {
var editor = obj.init(config);
editor.setComponents([{}, {}, {}]);
editor.getComponents().length.should.equal(3);
});
});
});

Loading…
Cancel
Save