小编myl*_*ore的帖子

如何将Nuxt与Vue Cli 3一起使用?

我目前正在使用Nuxt.js来构建我的Vue应用程序.是否有可能将Nuxt用作Vue Cli 3项目的一部分,以便我可以从中受益?我找不到他们官方文档的说明.

javascript vue.js

11
推荐指数
1
解决办法
2277
查看次数

如何在Vue.js中制作“容器”组件

我是Vue的新手,无法找到使用Vue.js实现类似React的“包装器”组件的方法,例如,datagrid使用第3方some-table组件和一个pagination组件的可重用组件。直观地,datagrid将提供两个组件都需要的数据/道具/事件并控制它们之间的通信。在React中,这可以像

// inside <Datagrid />
<Table {...someProps} />
<Pagination {...otherProps} />
Run Code Online (Sandbox Code Playgroud)

使用Vue,似乎类似下面的内容只能传递props给子组件

// inside Datagrid.vue
<some-table v-bind="$props"></some-table>
Run Code Online (Sandbox Code Playgroud)

我不确定是否slots有帮助。我一直在努力的这个包装器组件将props/events/slots其所有子组件所需的东西传递给他们,以便我可以利用其子组件(可能是某些第三方组件)提供的所有功能。而且,它也可能负责其子节点之间的数据交换之类的事情。虽然datagrid可能是一个插槽的包装,但如果双方tablepagination要求相同的data,我认为应该驻留在道具datagrid。如何将此传递data到插槽?

// Datagrid.vue
<template>
  <div>
    <slot name="table"></slot>
    <slot name="pagination"></slot>
  </div>
</template>

<script>
export default {
  name: 'Datagrid',
  data() {
    return {
      data: 'How to share it with table and pagination',
    }
  },
}
</script> 
Run Code Online (Sandbox Code Playgroud)

我可以找出的一些解决方案: …

javascript vue.js

2
推荐指数
1
解决办法
4397
查看次数

具有对象文字作为道具的 Vue.js 子组件在其父组件呈现时意外更新

我有几个 Vue 组件传递了一些对象文字作为道具,例如

<child :prop1="{ foo: 'bar' }"></child>
Run Code Online (Sandbox Code Playgroud)

但是,当父组件重新渲染时,如下面的最小代码和框示例所示,prop1更改(由观察者检测)并导致Child更新。如果 prop 是一个对象引用,它保持不变。

为什么会发生这种情况,这是否意味着使用对象字面量(可能还有数组字面量)作为道具可能不“安全”?

https://codesandbox.io/s/vue-template-jj0tb

javascript vue.js

2
推荐指数
1
解决办法
272
查看次数

标签 统计

javascript ×3

vue.js ×3