Skip to content

初识 Vue

Vue.js(简称 Vue)是一个用于构建用户界面的渐进式 JavaScript 框架。Vue 的设计核心是通过简洁的 API 和高效的响应式数据绑定,帮助开发者更容易地创建现代化的前端应用。

  • 想让 Vue 工作,就必须创建一个 Vue 实例(ViewModel,vm),且要传入一个配置对象;
  • root 容器里的代码依然符合 HTML 规范,只不过混入了一些特殊的 Vue 语法;
  • root 容器里的代码被称为 Vue 模板
  • Vue 实例和容器是一一对应的;
  • 真实开发中只有一个 Vue 实例,并且会配合着组件 (Vue Components,vc) 一起使用;
  • 中的 xxx 要写 JS 表达式,且 xxx 可以自动读取到 data 中的所有属性;
  • 一旦 data 中的数据发生改变,那么页面中用到该数据的地方也会自动更新。
javascript
// Vue 实例和 Vue 组件中常用的配置项(vm 和 vc 共有的)
// main.js 里面 new Vue 生成的叫做 vm;其他 .vue 文件中 export default 的都是 vc
new Vue ({
  // 1.数据
  data() { },  // 可简写为对象形式,但不推荐
  computed: { },  // 计算属性
  watch: { },  // 监视属性
  methods: { },  // 方法(函数)
  props: { },  // 接收父组件和路由传来的数据
  // 2.DOM
  el: '#app',  // 仅用于 new Vue 的 vm 中
  template: '<App/>',  // 一个字符串模板作为 Vue 实例的标识
  render: h => h(App),  // 字符串模板的替代方案
  renderError: { },  // 渲染失败时的输出
  // 3.生命周期钩子(回调函数,有省略)
  beforeCreate() { },
  created() { },  // 出现 $
  beforeMount() { },
  mounted() { },  // 出现 $el
  beforeUpdate() { },
  updated() { },
  activated() { },  // 当使用 keep-alive 缓存组件时会出现
  deactivated() { },  // 当使用 keep-alive 缓存组件时会出现
  beforeDestroy() { },
  destroyed() { },
  // 4.资源
  components: { },  // 组件
  directives: { },  // 指令
  filters: { },  // 过滤器
  mixins: { },   // 混合、混入
  // 5.其他
  name: '',  // 用在组件 vc 身上
  store: store,  // 当使用 Vue.use(Vuex) 后,就可以传入 store 配置项(vm 身上)
  router: router,  // 当使用 Vue.use(VueRouter) 后,就可以传入 router 配置项(vm 身上)
  beforeRouteEnter,  // 组件内守卫(进入守卫),vc 身上
  beforeRouteLeave,  // 组件内守卫(离开守卫),vc 身上
})