parent: hello {{ m.value }}
``` 在` ``` ```python # hello.py from vuepy import defineModel def setup(props, ctx, app): model = defineModel() # default model.value = 'world' return locals() ``` ```vueparent: hello {{ m.value }}
``` ### 通过slot分配内容 slot和vue.js基本相同 不同点: * 只实现了最基本的功能 * 不支持动态插槽名 * 不支持作用域插槽 ### 模版解析注意事项 和vue.js基本相同 不同点: * 不支持闭合标签,必须显式地写出关闭标签`` * 元素位置限制,在HTML元素中不支持嵌套自定义组件,例如div中不能放置Input等自定义组件,可以使用VBox或HBox替代div作为一种解决方案。 ```vue ``` 可用VBox代替 ```vue{{ a }}
``` ### 运行vuepy应用 1. `%vuepy_run`通过文件或组件变量运行应用 ```python %vuepy_run app.vue ``` ```python from vuepy import import_sfc App = import_sfc("App.vue") # 通过$$来引用变量 %vuepy_run $$App ``` 2. `%%vuepy_run`通过字符串运行应用 ```python %%vuepy_run ``` 如果需要访问当前jupyter笔记本中的变量可以通过以下方式 ```python # --- cell 1 --- a = 1 # --- cell 2 --- %%vuepy_run{{ a }}
``` ### 实时获取vuepy运行日志 ```python # 打印所有日志 %vuepy_log # 打印日志,但会清除之前的日志。 %vuepy_log clear ``` ## 集成 Anywidget 示例演示与 anywidget 组件进行状态同步,并实现事件机制。 ```vuecount: {{ count.value }}
float nums: {{ nums.value }}
int nums: {{ int_nums.value }}
``` ```vuebasic: {{ tags.value }}
unique: {{ unique_tags.value }}
``` ```vue注意:先调节音量
{}*{}*{}={}
'.format(a, b, c, a * b * c) display(widgets.HTML(html)) out = widgets.interactive_output(f, {'a': a, 'b': b, 'c': c}) vbox = widgets.VBox([widgets.VBox([a, b, c]), out]) widget = ref(vbox) return locals() ``` ### Component, Image ```vue