1

I installed vue-cli and made some components, and everything was working great until I had to update some object values with keys

obj = {
    key1: value1,
    key2: value2,
    key3: value3
};

The data is updating, but the view isn't updating and when I dig into Vue documentation it says

Due to limitations in JavaScript, Vue cannot detect the following changes to an array:

  1. When you directly set an item with the index, e.g. vm.items[indexOfItem] = newValue

The solution would be to use Vue.set() but when try that (inside my component) I get the following result:

Vue.set(example1.items, indexOfItem, newValue);

Uncaught ReferenceError: Vue is not defined

3
  • Show the code where you define and trying to change this object. Commented May 1, 2017 at 14:03
  • 5
    Make sure your component imports the Vue module at the top of the file or at the top of the script section: import Vue from 'vue'; Commented May 1, 2017 at 15:31
  • 1
    Great, that's work :) Commented May 1, 2017 at 15:41

2 Answers 2

6

You probably forgot to import your Vue in the component you're in

import Vue from 'vue'; 

This should solve

Sign up to request clarification or add additional context in comments.

Comments

0

You forget the most important thing to introduce vue. The simplest, we can directly in the html file in the script tag to introduce vue, such as:

<script src="https://cdn.bootcss.com/vue/2.3.3/vue.min.js" type="text/javascript" charset="utf-8"></script>

In projects that use vue, individuals do not recommend configuring webpack and vue-loader separately. You can directly use vue official scaffolding, vue-cli. Do not have to consider these configurations, automatically configured.

vue-cli

If you just started learning Vue, here's an entry-level demo. Although it is only a small application, but it covers a lot of knowledge points (vue2.0 + vue-cli + vue-router + vuex + axios + mysql + express + pm2 + webpack), including front-end, back-end, database and other sites Some of the necessary elements, for me, learning great significance, would like to encourage each other!

Vue Demo

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.