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

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

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

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

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

再帰

情報工学における再帰とは、プログラムのあるメソッドの処理上で自身のメソッドが再び呼び出されている処理の事をいいます。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

0回答

373閲覧

Vue.jsで階数を求める再帰を使って、Vueのコンポネントの多角性を見つめなおしたい

Vueties

総合スコア6

Vue.js

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

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

再帰

情報工学における再帰とは、プログラムのあるメソッドの処理上で自身のメソッドが再び呼び出されている処理の事をいいます。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

0クリップ

投稿2018/08/24 14:24

編集2018/08/24 14:30

前提・実現したいこと

Vueを使って、テンプレートを辿りつつ、さらに同じテンプレート(コンポネント)を辿って
再帰する、階数を求めるプログラムを作りたい。Vueの武器template:を組み合わせて
コールスタックを実現したい

発生している問題・エラーメッセージ

Vueの勉強不足か、Vueがまだまだ未熟なのか知らないが、 関数を強制的にコールスックから抜けられるReturneeが判りません。 Dom内にreturnが書ける方法がないか、思索中です。無くてもそれに 近い物があったら教えてください

該当のソースコード

JavaScript(Vue.js)

1 2<html> 3<head> 4<script src="https://unpkg.com/vue/dist/vue.js"></script> 5<script src="http://code.jquery.com/jquery.js"></script> 6</head> 7<body> 8<div id="app"> 9 <recursive :i="i" @start="pick"></recursive> 10 11</div> 12<script> 13Vue.component('recursive',{ 14 template:`<div><recursive v-if=\"$parent.$data.i>1\" :i=\"$parent.$data.i\" :one=\"one(--$parent.$data.i)\" :two=\"two\"></recursive> 15 <div :two=\"two()\" v-else>Ending</div></div>`, 16 /*Rootのiの整数値を元に、recursiveから再帰を使って、 17 returnのような関数から強制的に抜ける方法がなんなのか知りたい。 18 VueらしくDomにその方法が示せれると尚よい。*/ 19 methods:{ 20 one:function(a){ 21 this.$data.i=a; 22 return this.$data.i*this.$parent.$data.i 23 /* かな?*/ 24 }, 25 two:function(){ 26 this.$parent.$emit('start',1); 27 //この関数まだ作成中です。 28 } 29 }, 30 props:['i'] 31}) 32new Vue({ 33 el:"#app", 34 data:{ 35 i:5 36 }, 37 methods:{ 38 pick:function(a){ 39 var v=0 40 } 41 } 42}) 43</script> 44</body> 45</html> 46

試したこと

:one.once="one"みたいな修飾子を付けみたりした。

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

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

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

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

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

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

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問