Q
不能在構造函數
2
A
回答
8
您可以用Object.assign方法延長this
:
class Foo {
constructor (props) {
Object.assign(this, props);
}
}
const foo = new Foo({ a: 1 });
console.log(foo.a); // 1
1
看到你的蔓延運營商的使用,它看起來像您使用的是ECMAScript的一個第3階段的建議。
https://github.com/tc39/proposal-object-rest-spread
嘗試Object.assign方法:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/assign
的Object.assign()方法被用於所有可枚舉自己的屬性的值從一個或多個源對象複製到一個目標對象。它會返回目標對象。
Object.assign(目標,...源);
相關問題
- 1. Laravel 5.5,不能在構造函數
- 2. Laravel 5.2:不能調用構造函數
- 3. 不能隱藏構造函數[incr Tcl]
- 4. java構造函數錯誤(不能通過int到構造函數)
- 5. 是否有可能將構造函數放在另一個構造函數的構造函數中?
- 6. 從不同類的構造函數調用構造函數
- 7. 構造函數不可見
- 8. Firebase不是構造函數
- 9. TypeError:L.Control.Draw不是構造函數
- 10. Vue不是構造函數
- 11. Ext.ux.grid.GridSummary()不是構造函數
- 12. TypeError:cognitiveServices.face不是構造函數
- 13. actuate.Parameter不是構造函數
- 14. TypeError:AWS.DynamoDB.DocumentClient不是構造函數
- 15. THREE.FileLoader不是構造函數(...)
- 16. TypeError:fakeClass不是構造函數
- 17. TypeError:google.maps.Markers不是構造函數
- 18. LocalStrategy不是構造函數
- 19. google.maps.Polyline不是構造函數
- 20. ApiAiApp不是構造函數
- 21. $ .jqx.dataAdapter不是構造函數
- 22. google.maps.Overlay不是構造函數
- 23. TypeError:undefined不是構造函數
- 24. 構造函數不工作
- 25. 構造函數不叫
- 26. lime.fill.Frame不是構造函數
- 27. 結構不能包含顯式的無參數構造函數
- 28. 在Kotlin中有兩個不同構造函數的數據類構造函數
- 29. 構造函數中的調用基構造函數和其他構造函數
- 30. 如何在其他構造函數中調用構造函數?
我認爲這是試圖創建一個新的對象,並將其分配給'this',而不是將屬性合併到'this'中。 – Barmar
'this'是一個保留的javascript字,不能被覆蓋,是否嘗試過使用不同的var名稱? – Derek
'這是'不可分配的。你真的想要做什麼? – Amit