0
我正在使用riotjs庫,並有兩個標籤「評論列表」和「評論」。Riotjs嵌套標籤選項未定義
註釋列表:
<comment-list>
<div each={com in comments} >
<comment level={opts.level} comment={com} type={opts.level == 0 ? "parent" : "child"} ctype={commentType}></comment>
</div>
<div show={opts.level == 0}>
<a id="load-trigger" onclick={fetchMore}>Moar comments</a>
</div>
var self = this;
self.commentType = (self.opts.level === 0 ? "parent" : "child");
</comment-list>
和註釋:
<comment>
... some html ...
<div class="row" if={opts.level == 0}>
<div class="col s11 offset-s1 m11 offset-m1 l11 offset-l1" style="padding-left: 0;">
<comment-list level={1} fetchMore={fetchMore}></comment-list>
</div>
</div>
</comment>
評論-list.tag與初始化= 0的假定到這個水平值傳遞給評論水平。標籤。問題是當我嘗試訪問opts.level在comment.tag,我得到'未定義'。 ctype也一樣。 類型永遠是「孩子」,好像opts.level在comment-list.tag未定義。
Ps:我不認爲這可能是由於0評論列表被視爲空或'未定義',因爲我有相同的行爲值爲1例如 我是否有錯誤傳遞值直從opts對象?
我不知道你想要完成什麼,但有一些技巧。 正確安裝標籤,在這種情況下,我添加了一些初始值 'riot.mount('comment-list',{level:0,comments:[{level:0},{level:1}]})' 在你的第一個問題中,你是否試圖從opts父母或者你正在迭代的孩子中訪問關卡?在每個你在子上下文中,所以如果你想要父母你必須做parent.opts.level。這是一個簡化的例子http://plnkr.co/edit/7znf8HJh1wnpX9bjrxIX?p=preview – vitomd