超暫定版の予約入力画面を作る。
新規予約コンポーネント
☆ resources/js/components/NewBookComponent.vue
<template>
<div class="container">
<form v-on:submit.prevent="submit" class="form-horizontal">
<h3>ご予約内容</h3>
<div class="row mb-3">
<label for="resdate" class="col-sm-2 col-form-label">予約日</label>
<div class="col-sm-8">
<input type="date" id="resdate" name="resdate" class="form-control" v-model="book.resdate">
</div>
</div>
<div class="row mb-3">
<label for="restime" class="col-sm-2 col-form-label">予約時間</label>
<div class="col-sm-8">
<input type="number" id="restime" name="restime" class="form-control" v-model="book.restime">
</div>
</div>
<div class="row mb-3">
<label for="slot" class="col-sm-2 col-form-label">コース</label>
<div class="col-sm-8">
<input type="number" id="slot" name="slot" class="form-control" v-model="book.slot">
</div>
</div>
<div class="row mb-3">
<label for="num" class="col-sm-2 col-form-label">人数</label>
<div class="col-sm-8">
<input type="number" id="num" name="num" class="form-control" v-model="book.num">
</div>
</div>
<br>
<h3>ご予約者様情報</h3>
<div class="row mb-3">
<label for="name" class="col-sm-2 col-form-label">お名前
<span class="badge bg-danger text-white">必須</span>
</label>
<div class="col-sm-8">
<input type="text" id="name" name="name" class="form-control" v-model="book.name" required>
</div>
</div>
<div class="row mb-3">
<label for="email" class="col-sm-2 col-form-label">メールアドレス</label>
<div class="col-sm-8">
<input type="email" id="email" name="email" class="form-control" v-model="book.email">
</div>
</div>
<div class="row mb-3">
<label for="tel" class="col-sm-2 col-form-label">電話番号
<span class="badge bg-danger text-white">必須</span>
</label>
<div class="col-sm-8">
<input type="tel" id="tel" name="tel" class="form-control" v-model="book.tel" required>
</div>
</div>
<div class="row mb-3">
<button type="button" class="btn btn-success">登録確認へ</button>
<span> </span>
<router-link v-bind:to="{name: 'books.timetable'}">
<button type="button" class="btn btn-success">前画面に戻る</button>
</router-link>
</div>
</form>
</div>
</template>
<script>
export default {
data: function() {
return {
book: {
resdate: '2021-01-01',
restime: '1900',
slot: '120',
num: '2',
},
}
},
};
</script>
ルーターの登録
app.js に 新規予約コンポーネントを追加する。
pathは /new、nameは book.new とした。
☆ resources/js/app.js
pathは /new、nameは book.new とした。
☆ resources/js/app.js
:
import NewBookComponent from './components/NewBookComponent';
:
const router = new VueRouter({
routes: [
:
{
path: '/new',
name: 'book.new',
component: NewBookComponent,
},
],
});
:
0 件のコメント:
コメントを投稿