<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>vue アーカイブ - ゴロ寝</title>
	<atom:link href="https://blog.gorone.site/archives/tag/vue/feed" rel="self" type="application/rss+xml" />
	<link>https://blog.gorone.site/archives/tag/vue</link>
	<description></description>
	<lastBuildDate>Fri, 18 Mar 2022 04:40:25 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.8.2</generator>

<image>
	<url>https://blog.gorone.site/wp-content/uploads/2021/06/cropped-WS000006-32x32.jpg</url>
	<title>vue アーカイブ - ゴロ寝</title>
	<link>https://blog.gorone.site/archives/tag/vue</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>vueの勉強の為に超シンプルなサイトを作りました</title>
		<link>https://blog.gorone.site/archives/765</link>
					<comments>https://blog.gorone.site/archives/765#respond</comments>
		
		<dc:creator><![CDATA[gorori]]></dc:creator>
		<pubDate>Thu, 10 Feb 2022 02:51:37 +0000</pubDate>
				<category><![CDATA[日記]]></category>
		<category><![CDATA[Laravel]]></category>
		<category><![CDATA[vue]]></category>
		<guid isPermaLink="false">https://blog.gorone.site/?p=765</guid>

					<description><![CDATA[<p>目次 vueかreactを使っている企業さんが多い作成したサイト苦労した点 vueかreactを使っている企業さんが多い フリーランスや正社員の応募要項などを見ると、javascriptはもうjQueryではなくvueか [&#8230;]</p>
<p>投稿 <a href="https://blog.gorone.site/archives/765">vueの勉強の為に超シンプルなサイトを作りました</a> は <a href="https://blog.gorone.site">ゴロ寝</a> に最初に表示されました。</p>
]]></description>
										<content:encoded><![CDATA[
  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-2" checked><label class="toc-title" for="toc-checkbox-2">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">vueかreactを使っている企業さんが多い</a><ol><li><a href="#toc2" tabindex="0">作成したサイト</a><ol><li><a href="#toc3" tabindex="0">苦労した点</a></li></ol></li></ol></li></ol>
    </div>
  </div>

<h2><span id="toc1">vueかreactを使っている企業さんが多い</span></h2>
<p>フリーランスや正社員の応募要項などを見ると、javascriptはもうjQueryではなくvueかreactの2択になってきています。<br />
ブランク時期が丁度その切り替え時期にあたっていたので、とりあえずvueから手を出してみました。</p>
<h3><span id="toc2">作成したサイト</span></h3>
<a rel="noopener" href="https://tasks-4188.herokuapp.com/tasks" title="No such app" class="blogcard-wrap external-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard external-blogcard eb-left cf"><div class="blogcard-label external-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail external-blogcard-thumbnail"><img decoding="async" src="https://s.wordpress.com/mshots/v1/https%3A%2F%2Ftasks-4188.herokuapp.com%2Ftasks?w=160&#038;h=90" alt="" class="blogcard-thumb-image external-blogcard-thumb-image" width="160" height="90" /></figure><div class="blogcard-content external-blogcard-content"><div class="blogcard-title external-blogcard-title">No such app</div><div class="blogcard-snippet external-blogcard-snippet"></div></div><div class="blogcard-footer external-blogcard-footer cf"><div class="blogcard-site external-blogcard-site"><div class="blogcard-favicon external-blogcard-favicon"><img decoding="async" src="https://www.google.com/s2/favicons?domain=https://tasks-4188.herokuapp.com/tasks" alt="" class="blogcard-favicon-image external-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain external-blogcard-domain">tasks-4188.herokuapp.com</div></div></div></div></a>
<p>超シンプルなタスク管理アプリです。<br />
タスク管理アプリはなぜかチュートリアルなどで山ほど見るのでそこは困らなかったのですが、そのまま写経してしまうと同じになってしまうので、7つの習慣という本で４つのセクターに分けてタスクを消化するともっと幸せになれるよというのを参考に4つのカテゴリーから選ぶ様にしました。</p>
<a rel="noopener" href="https://amzn.to/3sr4HpX" title="Amazon.co.jp" class="blogcard-wrap external-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard external-blogcard eb-left cf"><div class="blogcard-label external-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail external-blogcard-thumbnail"><img decoding="async" src="https://s.wordpress.com/mshots/v1/https%3A%2F%2Famzn.to%2F3sr4HpX?w=160&#038;h=90" alt="" class="blogcard-thumb-image external-blogcard-thumb-image" width="160" height="90" /></figure><div class="blogcard-content external-blogcard-content"><div class="blogcard-title external-blogcard-title">Amazon.co.jp</div><div class="blogcard-snippet external-blogcard-snippet"></div></div><div class="blogcard-footer external-blogcard-footer cf"><div class="blogcard-site external-blogcard-site"><div class="blogcard-favicon external-blogcard-favicon"><img loading="lazy" decoding="async" src="https://www.google.com/s2/favicons?domain=https://amzn.to/3sr4HpX" alt="" class="blogcard-favicon-image external-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain external-blogcard-domain">amzn.to</div></div></div></div></a>
<h4><span id="toc3">苦労した点</span></h4>
<p>今回作成したサイトがSPAに向いているかは置いておいてvueを使うとかなり簡単にSPAを作成する事が出来ました。<br />
ただやはりvue自体に慣れていない事もあって苦労する点は多かったです。</p>
<p>・苦労した点１：デバック<br />
これは単純にAPI経由のデバックのやり方が分かっていないせいもあるのかもしれませんが、APIで投げたリクエストでlaravelのコントローラーでキャッチするのですが、なぜかvar_dump+exitで止まってくれませんでした。<br />
結局APIの中身を見てオブジェクトを書き換える事は出来たので、その関数を通っている事は間違いないのですが、なぜ止まってくれないのか謎です。<br />
なぜかリスト一覧の時は止まってくれたので、vueのルーター機能でコンポーネント化すれば見れたかもしれません。<br />
ここはもう少し掘り下げて学習が必要です。</p>
<p>ただPHP側でデバックがやりにくいのはありましたが、Vue.js Devtoolsというクロームのアドオンを入れると持っているデータが見れるのでこれを使えば何とかなりました。</p>
<a rel="noopener" href="https://chrome.google.com/webstore/detail/vuejs-devtools/nhdogjmejiglipccpnnnanhbledajbpd" title="Vue.js devtools - Chrome Web Store" class="blogcard-wrap external-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard external-blogcard eb-left cf"><div class="blogcard-label external-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail external-blogcard-thumbnail"><img loading="lazy" decoding="async" src="https://lh3.googleusercontent.com/Lu_6rc-5upC8g1v-SIBrYwQ8a-1blC81ZLSQss66IpTZ2_sinL7fP2ielWj3znVoIEtobNo-jlI39IV-7qnEvJWZb9A=s128-rj-sc0x00ffffff" alt="" class="blogcard-thumb-image external-blogcard-thumb-image" width="160" height="90" /></figure><div class="blogcard-content external-blogcard-content"><div class="blogcard-title external-blogcard-title">Vue.js devtools - Chrome Web Store</div><div class="blogcard-snippet external-blogcard-snippet">DevTools browser extension for Vue.js</div></div><div class="blogcard-footer external-blogcard-footer cf"><div class="blogcard-site external-blogcard-site"><div class="blogcard-favicon external-blogcard-favicon"><img loading="lazy" decoding="async" src="https://www.google.com/s2/favicons?domain=https://chromewebstore.google.com/detail/vuejs-devtools/nhdogjmejiglipccpnnnanhbledajbpd" alt="" class="blogcard-favicon-image external-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain external-blogcard-domain">chromewebstore.google.com</div></div></div></div></a>
<p>・苦労した点2:値渡し<br />
今回全部vueで書いたかというとそうではなく結局jqueryも使っています。<br />
ボタンを押した時に自動でセクションの部分が変わるようにしたのですが、その情報をvue側のテンプレートで拾ってくれない・・・。<br />
vueに慣れてる方ならその方法も分かると思うのですが、今回はその部分とリスポンシブ実装の部分をガッツリjqueryで書いてしまいました。</p>
<p>個人的にはやっぱりjqueryって便利だなと再確認したのと、SPAを作るのに関してはvueはかなりお手軽かと思いました。</p>
<p>ただ今回作ったのはタスクを入力してDBに登録、リストを表示する時もDBを読みに行くのでvueで完全な？SPAを作るとしたらnuxt.jsというのを使うみたいです。<br />
検索するとvueはjavascriptのアプリケーション(jqueryとかと同じ)でnuxtはフレームワークみたいです。<br />
nuxtはvue派生ですが、書き方などが少し違うようです。</p>
<p>次学習するのはnuxt、react、swiftもしたい。<br />
この3つの自分の中のポジションは、<br />
■弱点が潰せる<br />
nuxt、react<br />
■強みになるかも<br />
swift</p>
<p>swiftで遊びたいところですが、弱点を潰すのが先かなぁ。</p>
<p>投稿 <a href="https://blog.gorone.site/archives/765">vueの勉強の為に超シンプルなサイトを作りました</a> は <a href="https://blog.gorone.site">ゴロ寝</a> に最初に表示されました。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.gorone.site/archives/765/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
