@rattus-orm/pinia
v0.2.4
Published
ORM for your JS/TS apps: Pinia bindings
Downloads
68
Maintainers
Readme
Pinia data provider and helpers for Rattus ORM
Contents
- PiniaDataProvider;
- Composables:
useRattusContext,useRepository.
Installation
Use your favorite package manager. For example, yarn:
yarn add @rattus-orm/core @rattus-orm/piniaBasic usage
import { createApp } from 'vue'
import { createPinia } from 'pinia'
import { installRattusORM } from "@rattus-orm/pinia";
const pinia = createPinia()
const app = createApp({ /* your root component */ })
app
.use(pinia)
.use(installRattusORM())<template>
<p>{{ user.email }}</p>
<button type="button" @click="onClick">Update email</button>
</template>
<script lang="ts">
import { defineComponent } from 'vue'
import { Model, Uid, Str } from '@rattus-orm/core'
import { useRepository } from '@rattus-orm/pinia'
class User extends Model {
public static entity = 'user'
@Uid()
public id: string
@Str()
public email: string
}
export default defineComponent({
setup() {
const { save, find } = useRepository(User)
save({ id: '1', email: '[email protected]' })
const onClick = () => {
save({ id: '1', email: '[email protected]' })
}
const user = find('1')
return {
user,
onClick,
}
}
})
</script>Documentation
For detailed docs please read documentation website.
Contributing
Contributions are welcome! Please read our Contributing Guide for details on our code of conduct, and the process for submitting pull requests.
