1.0.5 • Published 4 years ago

egg-view-liquid v1.0.5

Weekly downloads
3
License
MIT
Repository
github
Last release
4 years ago

egg-view-liquid

NPM version Travis Status

egg view plugin for liquid.

Install

$ npm i egg-view-liquid --save

Usage

// {app_root}/config/plugin.js
exports.liquid = {
  enable: true,
  package: 'egg-view-liquid',
};

// {app_root}/config/config.default.js
exports.view = {
  mapping: {
    '.liquid': 'liquid',
  },
};

// liquid config
exports.liquid = {};

Create a liquid file

// app/view/hello.liquid
hello {{ data }}

Render it

// app/controller/render.js
exports.liquid = async ctx => {
  await ctx.render('hello.liquid', {
    data: 'world',
  });
};

The file will be compiled and cached, you can change config.liquid.cache = false to disable cache, it's disable in local env by default.

Include

You can include both relative and absolute file.

Relative file is resolve from current file path.

// app/view/a.liquid include app/view/b.liquid
{% render 'view/b' %}

Absolute file is resolve from app/view.

// app/view/home.liquid include app/view/partial/menu.liquid
{% render 'partial/menu' %}

Tips:

  1. Use when you need to import files: partial/xxx not /partial/xxx

  2. LiquidJs currently does not support direct use of method calls in files: Hello {{helper.data()}} can be replaced with tags or plugins if needed.

  3. Now, if you want to use LiquidJs for like express-ejs-Layout's contentfor, just use LiquidJs's block instead.

Configuration

see config/config.default.js for more detail.

Questions & Suggestions

Please open an issue here.

License

MIT

1.0.5

4 years ago

1.0.2

4 years ago

1.0.4

4 years ago

1.0.1

4 years ago

1.0.0

4 years ago