ошибка: зарезервированное слово 'var' javascript / vue - PullRequest
0 голосов
/ 09 января 2019

Моя миссия очень проста: я просто хочу массив со строками. На заднем плане я хочу добавить штрих-коды в этот массив позже.

Но главная проблема сейчас в том, что я всегда получаю:

"index.vue: var - зарезервированное слово"

Я заглянул в документ Vue и даже попробовал пример. Но понятия не имею, почему я всегда получаю эту синтаксическую ошибку.

Так что это моя часть JavaScript, интересный блок - последний, где я хочу объявить свой массив.

<script>
    import axios from 'axios';
    import moment from 'moment';

    export default {
      data() {
        return {
          form: {
            barcodes: [],
            id: this.$route.params.id,
            form: {},
            used_by: '',
            return_time: '',
            barcode: '',
            onSubmit: false,
          }
        }
      },
      methods: {
        onSubmit() {
          this.$message('submit!')

          axios.put('http://127.0.0.1:8000/api/tools/' + this.id, this.form)
          .then(response => {
              console.log(response);
              this.onSubmit = true;
          })
          .catch((error) => {
              console.log(error);
          })
        },
        onCancel() {
          this.$message({
            message: 'cancel!',
            type: 'warning'
          })
        }
      },

      created() {
        axios.get('http://127.0.0.1:8000/api/tools/' + this.id)
        .then(response => {
            console.log(response);
            this.form = response.data;
        })
        .catch((error) => {
            console.log(error);
        })
      },

      var example2 = new Vue({
        el: '#example-2',
        data: {
          parentMessage: 'Parent',
          items: [
            { message: 'Foo' },
            { message: 'Bar' }
          ]
        }
      })

    }

</script>

Это HTML-часть:

<ul id="example-2">
   <li v-for="(item, index) in items">
   {{ parentMessage }} - {{ index }} - {{ item.message }}
   </li>
</ul>

Здесь вы также можете увидеть пример: https://vuejs.org/v2/guide/list.html#Mapping-an-Array-to-Elements-with-v-for

Но я получаю:

index.vue: var is a reserved word (89:2)

  87 |   },
  88 |   
> 89 |   var example2 = new Vue({
     |   ^
  90 |   el: '#example-2',
  91 |   data: {
  92 |     parentMessage: 'Parent',

1 Ответ

0 голосов
/ 09 января 2019

Вы не можете поместить объявление переменной в литерал объекта. Должно быть записано как свойство объекта:

  example2: new Vue({
    el: '#example-2',
    data: {
      parentMessage: 'Parent',
      items: [
        { message: 'Foo' },
        { message: 'Bar' }
      ]
    }
  })
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...