Javascript 使用动态生成的对象数组填充ember power select时,无法将对象转换为Array.toString(本机)处的基元值

Javascript 使用动态生成的对象数组填充ember power select时,无法将对象转换为Array.toString(本机)处的基元值,javascript,arrays,select,ember.js,Javascript,Arrays,Select,Ember.js,我需要用商店中的对象填充电源选择,但我只能用硬编码数组myOptions显示选项。我试图动态生成myOption2,显然得到了与myOptions相同的输出,但它抛出了一个错误: ember.debug.js:19845 Uncaught TypeError: Cannot convert object to primitive value at Array.toString (native) at Object.addListener (http://localhost:4200/assets

我需要用商店中的对象填充电源选择,但我只能用硬编码数组
myOptions
显示选项。我试图动态生成
myOption2
,显然得到了与
myOptions
相同的输出,但它抛出了一个错误:

ember.debug.js:19845 Uncaught TypeError: Cannot convert object to primitive value
at Array.toString (native)
at Object.addListener (http://localhost:4200/assets/vendor.js:30682:88)
at Object.addObserver (http://localhost:4200/assets/vendor.js:34026:23)
at Array.addObserver (http://localhost:4200/assets/vendor.js:47679:27)
at Class.updateOptions (http://localhost:4200/assets/vendor.js:88968:17)
at invoke (http://localhost:4200/assets/vendor.js:11825:16)
at Queue.flush (http://localhost:4200/assets/vendor.js:11891:11)
at DeferredActionQueues.flush (http://localhost:4200/assets/vendor.js:11699:17)
at Backburner.end (http://localhost:4200/assets/vendor.js:11013:25)
at Backburner.run (http://localhost:4200/assets/vendor.js:11135:18)




提前谢谢

而不是
推送
您需要使用
推送对象
,只有这样,observer、computed属性才会触发,模板才会自动更新

this.get('myOptions2').pushObject(option._data)

话虽如此,我不确定这是否能解决您的问题。

您需要使用
pushObject
,而不是
pushObject
,只有这样,observer、computed属性才会触发,模板才会自动更新

this.get('myOptions2').pushObject(option._data)

尽管如此,我不确定这是否能解决您的问题。

什么是
选项。_data
?这看起来像是私有API!什么是
选项。\u数据
?这看起来像是私有API!
this.get('myOptions2').pushObject(option._data)