Grapesjs: load local html file into grapesjs

Created on 10 Sep 2019  路  5Comments  路  Source: artf/grapesjs

hello i am pretty new to grapejs i want to load a local html file in the assets folder into grapesjs editor ,pls tellme how i can load local html file thanks in advance ..

here is my code

import grapesjs from 'grapesjs';

import 'grapesjs/dist/css/grapes.min.css';
import 'grapesjs-preset-newsletter/dist/grapesjs-preset-newsletter.css';
import 'grapesjs-preset-webpage/dist/grapesjs-preset-webpage.min.css';

import gjspresetnewsletter from 'grapesjs-preset-newsletter';
import gjspresetwebpage from 'grapesjs-preset-webpage';

export default {
    data() {
        return {
            editor: null
        }
    },
    methods: {
        change() {
            this.$emit('change', this.editor.getHtml());
        },
    },
      mounted() {
            const LandingPage = {
            html: '../userpage/index.html',
            css: ['../userpage/style.css','../userpage/css.css','../userpage/bootstrap.min.css'],
            components: null,
            style: null,
            };
            this.editor = grapesjs.init({
            container: "#gjs",
            canvas: {},
            fromElement: true,
            components: LandingPage.components || LandingPage.html,
            style: LandingPage.style || LandingPage.css,
            plugins: [],
            pluginsOpts: {
                "gjs-preset-webpage": {}
            },
             storageManager: {
                type: 'local',
                stepsBeforeSave: 10,
                urlStore: '',
                urlLoad: 'https://raghuv9.github.io/Tapmusic/',
                params: {}, token
                headers: {},
                }
            });
    }
}

Most helpful comment

hi! beside reading the content of the file that heavily depends on your environment, (if you are in a node environment you can use 'fs' module), you can use editor.setComponents('your html content').
more info here
cheers.

All 5 comments

hi! beside reading the content of the file that heavily depends on your environment, (if you are in a node environment you can use 'fs' module), you can use editor.setComponents('your html content').
more info here
cheers.

hi! beside reading the content of the file that heavily depends on your environment, (if you are in a node environment you can use 'fs' module), you can use editor.setComponents('your html content').
more info here
cheers.

No actually i'm trying to give the link of that html file like url:'../somefolder/test.html' this is how i want to load it into editor instead of pasting html code inside set-component method, is there any chance of doing it like this(urlLoad:"assets/folder/file.html") by using urlLoad method inside storagemanager?

to my knowledge i am not aware of a way that grapesjs can do it.
sorry!

Browser (GrapesJS is executed in browser) should not be able to access arbitrary file from host machine file system. If that was allowed, you would be able to add some JS to a web page and be able to steal files from your users. If you want to achieve this, you must host your files on a http server.

Find the way to correctly load your HTML file (as already mentioned you can't do it without user consent for security reason) and then start the editor with that content

Was this page helpful?
0 / 5 - 0 ratings

Related issues

kawika-connell picture kawika-connell  路  3Comments

applibs picture applibs  路  3Comments

FlashPapa picture FlashPapa  路  3Comments

mathiasbc picture mathiasbc  路  3Comments

kosirm picture kosirm  路  3Comments