Introduction
Pinia ORM can also be extended by a plugin system which you can use to extend the
Repository
or the global config
Writing a custom plugin
Use definePiniaOrmPlugin
to create a custom Pinia ORM plugin. The context option gives you
model
, repository
and config
which you can edit
export default definePiniaOrmPlugin((context) => {
context.config.apiConfig = 'test'
return context
})
Now add your custom plugin to the Pinia ORM instance:
import { createPinia, setActivePinia } from 'pinia'
import { createORM } from 'pinia-orm'
import { createApp } from 'vue'
import { piniaOrmPlugin } from './plugins'
const app = createApp({})
const pinia = createPinia()
const piniaOrm = createORM({
plugins: [
piniaOrmPlugin()
],
})
pinia.use(piniaOrm)
app.use(pinia)
setActivePinia(pinia)
Now everytime e.g. you use useRepo
which uses the global config you can do this
console.log(useRepo(User).config.apiConfig)
// 'test'