【问题标题】:How split alpinejs Main file in several small files?如何将 alpinejs 主文件拆分为几个小文件?
【发布时间】:2020-08-27 23:58:24
【问题描述】:

使用 Bootstrap 4.5/jquery 3.3 / alpinejs 2.2 我想知道是否有办法制作 1 主文件和几个小文件,比如组件? 这种情况下可以共享数据吗?

谢谢!

【问题讨论】:

    标签: alpine.js


    【解决方案1】:

    Alpine.js 组件没有内置的方式在它们之间进行通信。

    但是,他们可以使用$dispatch 魔法属性来触发自定义事件,并使用x-on:custom-event-name.window.document 为窗口/文档自定义事件注册侦听器。

    使用它,您可以编写多个单独的组件并使用自定义事件共享信息(您可以在https://codewithhugo.com/alpinejs-component-communication-event-bus/ 找到更多模式)。

    至于拆分成不同的文件,Alpine.js 中没有文件/模板的概念,如果您使用的是静态站点生成器或服务器端模板引擎,则可以创建部分并以这种方式注入标记. Alpine.js 也可以很好地评估注入到 HTML 中的新组件(使用 element.innerHTML 或 Alpine.js x-html 指令)。

    要共享 Alpine.js “函数组件”,您可以将它们放入 .js 文件中,并使用常规 <script src="path/to/file.js"></script> 加载它们,只要函数在全局范围内定义,Alpine.js 就会运行它没有问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-09-14
      • 1970-01-01
      • 1970-01-01
      • 2010-11-13
      • 1970-01-01
      • 1970-01-01
      • 2012-06-26
      相关资源
      最近更新 更多