<input(selectitem)=“ selectedItem($ event)” />在Angular 5中不起作用

时间:2018-06-22 07:14:01

标签: javascript angular

我有一个输入元素,当我键入一个字符时,它将给出一些建议,我可以选择它,我想访问我选择的项目,为此,我定义了一个方法“ selectedItem($ event)”

<input type="text" (selectItem)="selecteditem($event)">

我的方法是:

selectedItem (items: any) { 
    console.log('selected item is ' + items)
}

在我的控制台上,我得到:

selected item is [object Object] 

它应该显示选中的项目,但是它显示对象数组。

如果我尝试print items[0],我将在控制台上获得undefined

这是什么问题?

1 个答案:

答案 0 :(得分:0)

'selectItem'代表什么?因为它显然不是本机输入元素侦听器和自定义指令。您需要在下次提供更多上下文信息。

我假设items代表一个对象,并且console.log向对象添加字符串会将对象转换为控制台中的字符串(尝试"" + {})。

要解决此问题,您想将items作为第二个参数传递到console.log,以便将您的对象不转换为字符串。您可以这样做

console.log('selected item is ', items)

obj = {name: 'realappie'}

console.log("name is" + obj);

console.log("name is", obj);