【问题标题】:How to reuse AlpineJs Data?如何重用 AlpineJs 数据?
【发布时间】:2021-11-16 06:53:26
【问题描述】:

<script defer src="https://cdn.jsdelivr.net/npm/alpinejs@3/dist/cdn.min.js"></script>

<div x-data="info">
  <span x-text="data"></span>
</div>

<div x-data="info">
  <span x-text="data"></span>
</div>

<script>
  let info ={
  data: "hello"
}

document.addEventListener("alpine:init", () => {
    info = Alpine.reactive(info)
    Alpine.data("info", () => info);
 });
</script>

上面的代码给出以下错误:

如何解决问题并重用 AlpineJS 数据?

【问题讨论】:

    标签: javascript html alpine.js


    【解决方案1】:

    您可以使用Alpine.store 访问全局 Alpine 状态。 (https://alpinejs.dev/magics/store)

    <script defer src="https://cdn.jsdelivr.net/npm/alpinejs@3/dist/cdn.min.js"></script>
    
    <div x-data>
      <span x-text="$store.info.data"></span>
    </div>
    
    <div x-data>
      <span x-text="$store.info.data"></span>
    </div>
    
    <script>
        document.addEventListener('alpine:init', () => {
            Alpine.store('info', {
                data: "Hello ??"
            })
        })
    </script>

    【讨论】:

    • 在获取和设置大量数据时效率不高。此外,我认为 Alpine 商店对于 get 和 set 等简单操作来说过于冗长。
    猜你喜欢
    • 2020-11-25
    • 2021-07-27
    • 2021-12-22
    • 2021-03-02
    • 2021-07-18
    • 1970-01-01
    • 2020-12-02
    • 1970-01-01
    • 2020-07-01
    相关资源
    最近更新 更多