首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何向Figma currentPage添加事件侦听器

如何向Figma currentPage添加事件侦听器
EN

Stack Overflow用户
提问于 2019-08-22 11:43:30
回答 3查看 727关注 0票数 1

我使用Figma和TypeScript为figma编写了UI插件。项目由两个主要文件组成:

  • code.ts用于调用figma-api
  • 具有插件用户界面的ui.html<script>...</script>

我的插件正在处理当前页面上的选择数据,因此我将从code.ts发送到ui数据,例如这个对象:

代码语言:javascript
复制
figma.currentPage.selection[0]

如何将事件侦听器添加到figma.currentPage?例如,如果用户在配置板上选择了其他元素,figma.currentPage.selection将发生变化,我希望将新的数据发送到ui中。

你有什么想法吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2020-09-29 05:56:59

我想这就是答案。

代码语言:javascript
复制
figma.on('selectionchange', () => {
  console.log(figma.currentPage.selection);
});

https://www.figma.com/plugin-docs/api/properties/figma-on/

票数 3
EN

Stack Overflow用户

发布于 2019-08-22 22:39:41

也许这不是最好的方法,而是一次有效的快速黑客攻击。我正在寻找同样的答案,但现在,我这样做。

基本上,分配一个初始变量层。然后,每隔几秒钟检查一次更改,如果var与前一个变量不同,则分配一个新的变量。

我希望这会有所帮助,直到我们找到一种正常的方法。

代码语言:javascript
复制
    var selected;

    selected = figma.currentPage.selection[0];

    setInterval(() => {

      var selectedNew = figma.currentPage.selection[0];

      if (selected != selectedNew) {

        selected = selectedNew;

      }

    }, 3000)
票数 1
EN

Stack Overflow用户

发布于 2022-01-16 13:57:08

最好的方法是使用

代码语言:javascript
复制
figma.on("selectionchange" , () => {
// insert your code here
})
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57608584

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档