FramerJS - 如何在不重新加载的情况下从代码中重置或刷新原型?

FramerJS - How to Reset or Refresh Prototype from code, without reloading?

如何以编程方式(通过代码)重置 FramerJS 原型?

我已经定义了一个层,点击它我希望原型重置到它的初始状态。我试过使用 location.reload() 但它是从网络重新加载的。如何在不从网络重新加载原型的情况下重置?

您可以通过调用 Framer.CurrentContext.reset() 并重建您的原型来实现。

为简化此操作,请将所有设置代码写入重置上下文后调用的函数中。请记住还要为初始设置调用 setup() 函数。

示例:

setup = ->
    # Everything should go inside the setup() function
    layerA = new Layer
        backgroundColor: 'green'

    layerA.animate
        properties:
            x: Align.right

    resetButton = new Layer
        x: Align.center
        y: Align.bottom
        backgroundColor: 'red'

    resetButton.onClick ->
        Framer.CurrentContext.reset()
        #Call setup() again to recreate all layers
        setup() 

# Initial setup call
setup()

完整原型在这里:http://share.framerjs.com/9fl1g7icvnax/