javascript - 在 vue 中作为 prop 传递的对象以字符串形式到达

标签 javascript string object vue.js vue-component

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/

相关文章:

iPhone Obj-C - 从 NSMutableArray 检索自定义对象

javascript - 如何用新敌人重置游戏?

javascript - ember-cli 中没有单例的依赖注入(inject)

string - Tcl在字符串末尾添加一个符号N次

java - 如何打印存储在数组中的对象的实例

javascript - 渲染文本输入后使用 useState Hook 更新对象

javascript - 如何使用 Twitter Bootstrap 显示/隐藏特定警报?

javascript - Angularjs ng-show 不起作用

php - APL 中的爆炸和内爆

php - 假设的串联困境