我想知道setup從可組合方法訪問我的函式上的資料的最佳方法是什么......如果有可能的話(以及一個好的做法)。
例如,在我的主要組件上,我會有一個反應性data物件,其中包含該組件中使用的所有變數......但并非所有變數都會被我的可組合使用。
這是我正在嘗試做的一個例子(它有點像一個可組合的模型)......
假設我有一個useDrivers可組合的,并想使用它的saveDriver方法,如下所示:
// all shortened for readability
import useDrivers from "@composables/use-drivers";
export default {
setup() {
const { saveDriver } = useDrivers();
const data= reactive({
foo: null,
bar: null,
accident: { ... },
driver: { ... },
anotherUsedVar: null,
});
// instead of doing something like this:
saveDriver(driver, accident.id, anotherUsedVar);
// or even worse:
saveDriver(driver.name, driver.gender, driver.license, accident.id, anotherUserVar);
// Could I, somehow, access my DATA const from inside my method?
// but, again, without having to pass whatever amount of parameters
saveDriver();
}
}
uj5u.com熱心網友回復:
如果資料是靜態的,它可以是單個背景關系物件:
const context = { name: driver.name, ... };
saveDriver(context);
如果資料應該在 內部保持反應性saveDriver,則可以傳遞計算出的 ref:
const context = computed(() => ({ name: driver.name, ... });
saveDriver(context);
然后資料需要內部被處理saveDriver-與常規組合物API computed,watch等
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/352426.html
標籤:Vue.js Vuejs3 vue-composition-api
