Vue.js:"TypeError:无法设置只有getter的#<Object>的属性道具"

Bén*_*uge 7 javascript vue.js

我试图实现一个Vue组件,我收到错误:

[Vue warn]: Error in render: "TypeError: Cannot set property props of 
#<Object> which has only a getter"
(found in <Root>)
Run Code Online (Sandbox Code Playgroud)

我也在使用vuedraggable库,但我认为问题更多的是Vue问题,而不是vuedraggable问题.以下是我的代码.

这是draggable-list.vue

<template src="./draggable-list-component.html"></template>
<script src="./draggable-list.js"></script>
Run Code Online (Sandbox Code Playgroud)

可拖动,list.js

const draggable = require("vuedraggable");

module.exports = {
  name: "draggable-list",
  components: {
    draggable
  },

  // properties which has been passed from the parent vue to the component
  props: ["title", "elements"],

  data() {
    return {
      isDragging: false,
    };
  },

  methods: {
    test() {
      console.log("blou");
    }
  }
};
Run Code Online (Sandbox Code Playgroud)

draggable-list-component.html:

<div id="draggable-list">
  <draggable element="ul"
             :list="elements">
    <!-- TODO -->
  </draggable>
</div>
Run Code Online (Sandbox Code Playgroud)

我的main.js然后调用另一个js文件:

require("./components/manager");
Run Code Online (Sandbox Code Playgroud)

在经理中我实例化了我的Vue实例:

const Vue = require("vue/dist/vue.common");
const draggableList = require("./draggable-list.vue");

let triggerLibrary;

triggerLibrary = new Vue({
  el: "#draggable-list",
  template: "<draggableList :title='title' :elements='triggerElements' 
/>",
  components: {draggableList},

  data: {
   title: "Trigger library",
    triggerElements: [{name:"Trigger name", description:"Quick trigger 
description"}]
  }
});
Run Code Online (Sandbox Code Playgroud)

我在我的index.html中使用它像这样:

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width,initial-scale=1.0">
    <title>planner</title>
  </head>
  <body>
  <div id="draggable-list">
    <draggable-list></draggable-list>
  </div>
  </body>
Run Code Online (Sandbox Code Playgroud)

有谁看到这里有什么问题?

Pla*_*atr 8

当您使用 CommonJS 模块时,请尝试以这种方式要求您的 Vue 组件:

const draggableList = require("./draggable-list.vue").default;
Run Code Online (Sandbox Code Playgroud)