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










