質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Vue.js

Vue.jsは、Webアプリケーションのインターフェースを構築するためのオープンソースJavaScriptフレームワークです。

Stripe

Stripeとは、米国のオンライン決済システム提供企業、及び同社が提供する決裁システムを指します。Webサイトやモバイルアプリにコードを組み込むことでクレジットカードなどの決済サービスが簡潔に追加できます。

Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

Webサイト

一つのドメイン上に存在するWebページの集合体をWebサイトと呼びます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

1回答

5398閲覧

Laravel,Stripeでviewでエラーが出てしまう

tenlife

総合スコア70

Vue.js

Vue.jsは、Webアプリケーションのインターフェースを構築するためのオープンソースJavaScriptフレームワークです。

Stripe

Stripeとは、米国のオンライン決済システム提供企業、及び同社が提供する決裁システムを指します。Webサイトやモバイルアプリにコードを組み込むことでクレジットカードなどの決済サービスが簡潔に追加できます。

Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

Webサイト

一つのドメイン上に存在するWebページの集合体をWebサイトと呼びます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

1クリップ

投稿2020/02/27 10:54

LaravelでStripeを使い決済機能をつけようとしています。

このサイトを参考にしながら進めています。
https://takkublog.net/stripe02/

画面に行くとコンソールにエラーが出てしまいます。

[Vue warn]: Error compiling template: Templates should only be responsible for mapping the state to the UI. Avoid placing tags with side-effects in your templates, such as <script>, as they will not be parsed.

調べた結果

div要素の閉じタグなどはしっかりしているか?
src="https://checkout.stripe.com/checkout.js"を読み込む位置がおかしい?

調べたサイト
https://stackoverflow.com/questions/38119088/error-templates-should-only-be-responsible-for-mapping-the-state-to-the-ui-avo

https://qiita.com/narutaro/items/50d0e4714f93279502c9

buy.blade.php

1<div class="content"> 2 <form action="{{ asset('charge') }}" method="POST"> 3 {{ csrf_field() }} 4 <script 5 src="https://checkout.stripe.com/checkout.js" class="stripe-button" 6 data-key="{{ env('STRIPE_KEY') }}" 7 data-amount="1000" 8 data-name="Stripe Demo" 9 data-shipping-address=true 10 data-label="決済をする" 11 data-description="Online course about integrating Stripe" 12 data-image="https://stripe.com/img/documentation/checkout/marketplace.png" 13 data-locale="auto" 14 data-currency="JPY"> 15 </script> 16 </form> 17 </div>

app.blade.php

1<!doctype html> 2<html lang="{{ str_replace('_', '-', app()->getLocale()) }}"> 3<head> 4 <meta charset="utf-8"> 5 <meta name="viewport" content="width=device-width, initial-scale=1"> 6 7 <!-- CSRF Token --> 8 <meta name="csrf-token" content="{{ csrf_token() }}"> 9 10 <title>{{ config('app.name', 'Tenlife') }}</title> 11 12 <!-- Scripts --> 13 <script src="{{ asset('js/app.js') }}" defer></script> 14 <script src="https://cdnjs.cloudflare.com/ajax/libs/axios/0.18.0/axios.min.js"></script> 15 16 <!-- Fonts --> 17 <link rel="dns-prefetch" href="//fonts.gstatic.com"> 18 <link href="https://fonts.googleapis.com/css?family=Nunito" rel="stylesheet"> 19 20 <!-- Styles --> 21 <link href="{{ asset('css/app.css') }}" rel="stylesheet"> 22 <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/uikit@3.3.0/dist/css/uikit.min.css" /> 23 <script src="https://cdn.jsdelivr.net/npm/uikit@3.3.0/dist/js/uikit.min.js"></script> 24 <script src="https://cdn.jsdelivr.net/npm/uikit@3.3.0/dist/js/uikit-icons.min.js"></script> 25</head> 26<body> 27 <div id="app"> 28 </div> 29</body> 30</html> 31

自分では原因を突き止めることができませんでした。

どなたか知恵を貸していただきたいです。

よろしくお願いします。

php 7.4
laravel 6.0

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

エラーではなくwarnのようですが
簡単にいうと

id='app'の中にscriptタグを入れるんじゃねーよ!
ということです。
Vueを使っていない様ならVueを消してください。(app.jsに入ってます)
または
id='app'を消しても良いです

投稿2020/02/27 13:02

mikkame

総合スコア5036

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

tenlife

2020/02/27 21:21

vueを使用している場合はどのように対応すれば良いでしょうか。。
mikkame

2020/02/28 00:56

Vueを使用している場合簡単差し込むだけ!checkout.jsさんが動作しないので https://qiita.com/reon777/items/486eefb08e0c94042148 こういうの参考にしてみてください。 上記が難しいようでしたら荒技ですが、その部分だけVueを入れないという手もありかもしれません
tenlife

2020/02/28 02:38

解決しました! 丁寧にありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問