Skip to content
Snippets Groups Projects
ListLayer.vue 1.71 KiB
Newer Older
<template>
Adam Procter's avatar
Adam Procter committed
  <div>
    <div v-for="(value, index) in configPositions" v-bind:key="index">
      <div v-if="nodeid == value.node_id && deleted == false">
        <form>
          <!-- <div v-if="posvalue.read_mode == false"> -->
          <div v-for="value in $options.myArray" v-bind:key="value.node_id">
            <div v-if="value.deleted == false">
              <textarea
                v-if="nodeid == value.node_id"
                @focus="editTrue(true)"
                @blur="editTrue(false)"
                autofocus
                v-model="value.node_text"
                @input="editNode"
                :id="value.node_id"
                ref="nodetext"
                placeholder="Idea goes here!"
              ></textarea>
            </div>
          </div>
        </form>
      </div>
    </div>
  </div>
</template>

<script>
import { mapState } from 'vuex'

export default {
  name: 'ListLayer',
Adam Procter's avatar
Adam Procter committed

  data: function () {
    return {}
  },

  props: {
    nodeid: String,
Adam Procter's avatar
Adam Procter committed
    nodetext: String,
Adam Procter's avatar
Adam Procter committed
    deleted: Boolean,
  },

  computed: mapState({
Adam Procter's avatar
Adam Procter committed
    myNodes: (state) => state.myNodes,
Adam Procter's avatar
Adam Procter committed
    configPositions: (state) => state.configPositions,
    //  shortcutstate: (state) => state.shortcutstate,
Adam Procter's avatar
Adam Procter committed
  myArray: null,
  created() {
    this.$options.myArray = this.myNodes
  },

  methods: {
    editNode(e) {
      var nodeid = e.target.id
      var nodetext = e.target.value
      this.$store.dispatch('editNode', { nodeid, nodetext })
    },

    editTrue(e) {
      this.$emit('editTrue', e)
      // this.firstload = false
      //  // console.log(e)
    },
Adam Procter's avatar
Adam Procter committed
  },
}
</script>

<style lang="css" scoped>
Adam Procter's avatar
Adam Procter committed
h2 {
  color: red;
}

textarea {
  width: 95%;
  height: 100px;
  margin-left: 1em;
  margin-bottom: 1em;