亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

控制臺報錯

老師,在推入新的todo的時候,控制臺出現了Uncaught TypeError: Cannot read property 'unshift' of undefined的錯誤,請問是怎么回事呢?這里我嘗試著打印了this.props.store.todos,但是顯示為undefined

正在回答

1 回答

unshift是js原生數組中的方法,它的作用是向數組的頭部添加一個或多個元素。如果你控制臺打印出Cannot read property 'unshift' of undefined。說明你的todo根本就不是一個數組。你可以在你的createTodo中將你的todos打印一下看看是什么


@action.bound?createTodo(title)?{
????console.log(this.todos);
???this.todos.unshift(new?Todo(title))
}

這是我打印出的信息

  1. Proxy?{length: 0, Symbol(mobx administration): ObservableArrayAdministration}

    1. [[Handler]]:?Object

    2. [[Target]]:?Array(1)

      1. 0:?Todo?{id:?0.21948423547067275,?Symbol(mobx did run lazy initializers):?true,?Symbol(mobx administration):?ObservableObjectAdministration$$1}

      2. length:?1

      3. Symbol(mobx administration):?ObservableArrayAdministration?{owned:?false,?values:?Array(1),?proxy:?Proxy,?lastKnownLength:?1,?atom:?Atom$$1,?…}

      4. __proto__:?Array(0)

    3. [[IsRevoked]]:?false


1 回復 有任何疑惑可以回復我~
#1

EWL 提問者

之前已經解決了,謝謝老師的回復。非常感謝
2018-10-19 回復 有任何疑惑可以回復我~
#2

慕后端6136280 回復 EWL 提問者

我不是老師呢,呵呵
2018-11-02 回復 有任何疑惑可以回復我~
#3

慕仙3135789

在createTodo中將todos打印了也是undefined?不知道為啥?
2019-09-10 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

控制臺報錯

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號