https://jsfiddle.net/2xwo87bs/
为了让 Vue 处理我传递给组件的对象属性,我必须首先将字符串转换为对象(在代码片段中,我采取了简单的方法并使用了 JSON.parse()
).有没有办法可以将真正的 javascript 对象作为 prop 直接传递给组件,而不将其解释为字符串?请注意,我将多次使用该组件,这会将单个 data()
对象传递到 prop 中,然后在组件中用于 v-bind
,每次使用都不切实际
最佳答案
当你传递这样的 prop 时:
<component ok='{"data-x":1}'></component>
...您实际上正在传递字符串 '{"data-x":1}'
作为 prop 值。
您需要使用绑定(bind)来评估 prop 值:
<component v-bind:ok='{"data-x":1}'></component>
...或使用简写版本:
<component :ok='{"data-x":1}'></component>
这样,对象 {"data-x":1}
将作为 prop 值传递。
关于javascript - 在 vue 中作为 prop 传递的对象以字符串形式到达,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57875282/