uniapp DIY可视化工具 控件拖拽工具怎么开发
答:需要 (**拖拽库**) (**模板引擎**)代码自动生成
python有哪些模板引擎
前端有哪些模板引擎
vue有哪些拖拽库
python 使用 jinja2
测试1.py
from jinja2 import Template
template=Template("T am a {{ name }} ")
result=template.render(name="wenlong")
print(type(result),result)
# 当前jinja2版本 2.11.2
测试2.py
from jinja2 import FileSystemLoader,Environment
# 从文件系统加载模板文件路径
loader=FileSystemLoader(['templates'],encoding="utf-8")
# 核心组件 配合FileSystemLoader 一起使用
enviroment=Environment(loader=loader)
# 传入模板文件名称
tpl=enviroment.get_template('one.tpl')
# 可将参数传到前端模板进行渲染
data={'ip':'1.1.1.1'}
output=tpl.render(data=data)
print(output)
# 写入文件方法1
# with open("测试.vue",'w') as f:
# f.write(tpl.render(data=data))
# 写入文件方法2
tpl.stream(data=data).dump("1.vue")
# 当前jinja2版本 2.11.2
测试3.py
one.tpl文件
<template>
{{data.name}}
</template>
<script>
export default {
data() {
return {
};
},
onShow() {
},
onLoad(option) {
},
methods: {
{{data.method}}
}
};
</script>
<style lang="scss" scoped>
</style>
from jinja2 import FileSystemLoader, Environment
# 从文件系统加载模板文件路径
loader = FileSystemLoader(['templates'], encoding="utf-8")
# 核心组件 配合FileSystemLoader 一起使用
enviroment = Environment(loader=loader)
# 传入模板文件名称
tpl = enviroment.get_template('one.tpl')
# 可将参数传到前端模板进行渲染
name = "文龙"
data = {
'name': '<view>' + name + '</view>',
'method': """
async init() {},
chooseWxavatar(e) {
const { avatarUrl } = e.detail;
let baseavatarUrl = 'data:image/png;base64,' + wx.getFileSystemManager().readFileSync(avatarUrl, 'base64');
this.wxavatar = baseavatarUrl;
},
""",
}
output = tpl.render(data=data)
print(output)
# 写入文件方法1
# with open("测试.vue",'w') as f:
# f.write(tpl.render(data=data))
# 写入文件方法2
tpl.stream(data=data).dump("1.vue")
# 当前jinja2版本 2.11.2