LoginSignup
aozora717
@aozora717 (ao fukurou)

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

Vue3 createでデータをstoreした後のリダイレクト先の設定方法を教えてください。

解決したいこと

Vue初心者です。皆様よろしくお願いします。LaravelとVueでCRUDを勉強しています。createでデータを保存した後に自動的にリダイレクトして、http://127.0.0.1:8000/dashboardに戻るのですが、
連続してデータを投稿したいので、http://127.0.0.1:8000/create にリダイレクトしたいと考えています。
リダイレクト先がどこで設定されているのかも現在分からない状態です。

現在のコードはこちらになっています。
Create.vue

import { reactive  } from 'vue'
import useProducts from '../../composables/products'

 export default {
     setup() {       
            const form = reactive({
            name: '',
            tag: '',
            description: ''
        })

        const { errors, storeProduct } = useProducts()

        const saveProduct = async () => {
               await storeProduct({ ...form})
        }       

        return {
            form,
            errors,            
            saveProduct
        }
     }
 }
 </script>

app.jsの saveProductの部分

 var saveProduct = /*#__PURE__*/function () {
      var _ref = _asyncToGenerator( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default().mark(function _callee() {
        return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default().wrap(function _callee$(_context) {
          while (1) {
            switch (_context.prev = _context.next) {
              case 0:
                _context.next = 2;
                return storeProduct(_objectSpread({}, form));

              case 2:
              case "end":
                return _context.stop();
            }
          }
        }, _callee);
      }));

      return function saveProduct() {
        return _ref.apply(this, arguments);
      };
    }();

    return {
      form: form,
      errors: errors,
      saveProduct: saveProduct
    };

自分で試したこと

return 文の中にpathを入れるようなのですがリダイレクトしない状況です。
saveProductを行ってからリダイレクトするわけなので、ここではないような気もするのですが、app.jsに加えるのが正しいのか悩んでいます。

 return {
            form,
            errors,
            path: '/create',          
            saveProduct
        }

よろしくお願いいたします。

0

No Answers yet.

Your answer might help someone💌