我正在尝试从.ejs文件向vue组件发送道具。
每次我这样做都是作为未定义的值发送的。
我创建了人员视图组件,这是调用它的代码。
<people-view componentName="Something" :componentValue="obj.value"/>
请注意, componentName 是静态字符串, componentValue 是动态值。
谢谢!
答案 0 :(得分:0)
假设您将obj
作为上下文传递给视图,则需要将变量包装在<%= %>
标记中:
<people-view componentName="Something" :componentValue="<%= obj.value %>"/>
答案 1 :(得分:0)
问题在于ejs无法解析骆驼案组件名称,解决方案是将“ componentName”更改为“ componentname”
<people-view componentname="Something" />
答案 2 :(得分:0)
您也可以使用
<people-view
v-bind:data_one="<%= string_data %>"
v-bind:data_two="<%= JSON.stringify(JSON_data) %>">
</people-view>
如果您将string_data
作为字符串化的JS对象发送,则可以使用第一个绑定,也可以在从后端路由接收到它时,使用第二个绑定来对其进行字符串化。
原因是v-bind需要一个字符串值才能传递给组件。我在最近的项目中使用了这个。