From 4f8fc89c6f66d844c516d5296a308bad566701b9 Mon Sep 17 00:00:00 2001 From: harttle Date: Mon, 7 Oct 2019 22:40:36 +0800 Subject: [PATCH] docs: update reactjs demo for consistant ES6 style --- demo/reactjs/src/App.js | 36 ++++++++---------------------------- demo/reactjs/src/engine.js | 12 ++++++++++++ 2 files changed, 20 insertions(+), 28 deletions(-) create mode 100644 demo/reactjs/src/engine.js diff --git a/demo/reactjs/src/App.js b/demo/reactjs/src/App.js index 9198717bf..59944d7da 100644 --- a/demo/reactjs/src/App.js +++ b/demo/reactjs/src/App.js @@ -1,38 +1,18 @@ import React, { Component } from 'react'; import logo from './logo.svg'; import './App.css'; - -let path = require('path') -let { Liquid } = require('liquidjs'); - -let config = require('./views/demo.liquid'); -let pageConfig = config.toString() - -let Parser = require('html-react-parser'); +import tpl from './views/demo.liquid'; +import Parser from 'html-react-parser'; +import { engine } from './engine'; class App extends Component { -componentDidMount() { + async componentDidMount() { + const html = await engine.renderFile(tpl.toString(), {name: 'alice', logo: logo }) + this.setState({ html }) // outputs "Alice" + } - let engine = new Liquid({ - root: path.resolve(__dirname, 'views/'), // dirs to lookup layouts/includes - extname: '.liquid' // the extname used for layouts/includes, defaults - }); - - engine.registerFilter('image', d => { - let img = ``; - return img - }) - - engine.renderFile(pageConfig, {name: 'alice', logo: logo }) - .then((htmlTemp) => { - this.setState({ html: htmlTemp }) - }) // outputs "Alice" -} - -state = { - html: [] -} + state = { html: '' } render() { return ( diff --git a/demo/reactjs/src/engine.js b/demo/reactjs/src/engine.js new file mode 100644 index 000000000..14411217a --- /dev/null +++ b/demo/reactjs/src/engine.js @@ -0,0 +1,12 @@ +import path from 'path'; +import { Liquid } from 'liquidjs'; + +export const engine = new Liquid({ + root: path.resolve(__dirname, 'views/'), // dirs to lookup layouts/includes + extname: '.liquid' // the extname used for layouts/includes, defaults +}); + +engine.registerFilter('image', d => { + let img = ``; + return img +})