Methode zum Erhalten einer Referenz auf den aktuellen Pinia-Shop: dynamische Kombinationsoperation
P粉195200437
2023-08-14 14:12:02
<p>Das ist „ungefähr“ das, was ich will: </p>
<pre class="brush:php;toolbar:false;">// Dies ist eine allgemeine zusammensetzbare Funktion:
Funktionsexport useGeneric() {
Funktion genericAct(){
const store = getCurrentStore(); // Das ist es, was ich brauche
store.a.value = 42;
store.act2(); // Diese Aktion sollte mit einer gemeinsamen Funktion im Store implementiert werden
}
return {genericAct}
}
// Hier ist ein Beispielspeicher, der es verwendet
export const useMyStore = defineStore('myStore', () => {
const a = ref(1);
const b = ref(1);
const {genericAct} = useGeneric();
Funktion act2(){
b.Wert = 43;
}
return {a, b, genericAct, act2};
}</pre>
<p>Wie erhalte ich den Speicher, an den diese Aktion gebunden ist? (Oder wie übergibt man es als Argument an <code>useGeneric</code>?)</p>
<p>(Natürlich ist dies nur das einfachste Beispiel. In praktischen Anwendungen werde ich es verwenden, um nützlichere Dinge zu tun ...)</p>
我不知道这是否是最好的方法,你也可以考虑 @Estus Flask 的评论:
但是我最终选择将
useMyStore
作为参数传递。请注意,它应该在每个通用操作中调用,因为在
useGeneric()
执行时,store 尚未创建。下面是代码示例: