$ cnpm install @uyun/template-parser
import axios from 'axios'
import toDataURL, { createPage, renderTemplate, MemoryFs } from '@uyun/template-parser'
;(async function () {
const { data } = await axios.get('template.zip', {
responseType: 'arraybuffer'
})
// config为项目配置
toDataURL(data, config).then(url => {
// 生成的zip包的base64编码地址
console.log(url)
})
// 为每一个页面生成代码
// 该函数可用来实时预览当前编辑页面生成代码
const pages = config.pages.map(page => ({
name: page.name,
code: createPage(page)
}))
// 下面代码相当于toDataURL
MemoryFs.create(data)
.then(memoryFs => renderTemplate(memoryFs, config))
.then(memoryFs => {
console.log(memoryFs)
return memoryFs.toDataURL()
})
.then(url => {
this.setState({ url })
})
MemoryFs.create(data).then(memoryFs => {
memoryFs.readFile('./src/App.jsx').then(text => {
console.log(text)
})
})
})()
Copyright 2013 - present © cnpmjs.org