介绍-vuejs官网学习笔记

简介:        前言:这两天把vuejs官方文档都看了一遍(路由的文档还没看),现在回过头来再结合英文文档重新看一遍 ,为的是学下英文,然后总结性的写一下。

       前言:这两天把vuejs官方文档都看了一遍(路由的文档还没看),现在回过头来再结合英文文档重新看一遍 ,为的是学下英文,然后总结性的写一下。尽管vuejs的官方文档写得详细又好,但是总觉得吧,知识这东西还是得自己跟着文档把代码手敲一遍,把要点写写,这样才能把别人的知识变成自己的。感觉自己要学的东西还有很多,长路漫漫,上下求索吧!

vue.js 是一套构建用户界面的渐进式框架。与其他重量级框架不同的是,Vue 采用自底向上增量开发的设计。Vue 的核心库只关注视图层,它不仅易于上手,还便于与第三方库或既有项目整合。

1、声明式渲染
①vue.js的的核心是一个允许采用简洁的模板语法来声明式的将数据渲染进DOM:

<div id="app">
  {{message}}
</div>

//js
var app=new Vue({
    el:"#app",
    data:{
        message:"hello Vue!"
    }
});

②绑定DOM元素属性
它们会在渲染的 DOM 上应用特殊的响应式行为。简言之,这里该指令的作用是:“将这个元素节点的 title 属性和 Vue 实例的 message 属性保持一致”。

<div id="app">
    <span v-bind:title="message">
        将鼠标放到上面将看到title文字信息
    </span>
</div>

//js
var app=new Vue({
    el:"#app",
    data:{
        message:"U loaded this page on"+new Date();
    }
});

2、条件和循环
① 控制切换一个元素的显示。
这个例子演示了我们不仅可以绑定 DOM 文本到数据,也可以绑定 DOM 结构到数据

<div id="app-3">
  <p v-if="seen">Now you see me</p>
</div>

//js
var app3 = new Vue({
  el: '#app-3',
  data: {
    seen: true
  }
})

② v-for 指令可以绑定数组的数据来渲染一个项目列表(类似于for-in循环)

<div id="app-4">
 <ol>
  <li v-for="todo in todos">
    {{ todo.text }}
  </li>
 </ol>
</div>

//js
var app4 = new Vue({
 el: '#app-4',
 data: {
  todos: [
    { text: '学习 JavaScript' },
    { text: '学习 Vue' },
    { text: '整个牛项目' }
  ]
 }
});

3、处理用户输入
①我们可以用v-on指令绑定一个事件监听器,通过它调用我们 Vue 实例中定义的方法。
注意在 reverseMessage 方法中,我们更新了应用的状态,但没有触碰 DOM——所有的 DOM 操作都由 Vue 来处理,你编写的代码不需要关注底层逻辑。

<div id="app-5">
  <p>{{ message }}</p>
  <button v-on:click="reverseMessage">逆转消息</button>
</div>
 
//js
var app5 = new Vue({
  el: '#app-5',
  data: {
    message: 'Hello Vue.js!'
},
methods: {
    reverseMessage: function () {
    this.message = this.message.split('').reverse().join('');
  }
});

② v-model 指令,它能轻松实现表单输入和应用状态之间的双向绑定。

<div id="app-6">
    <p>{{message}}</p>
    <input v-model="message"/>
</div>

var app6=new Vue({
    el:"#app-6",
    data:{
        message:"hello world!"
    }
});

4、组件化应用构建
一个组件本质上是一个拥有预定义选项的一个 Vue 实例。
属性能够将数据从父作用域传到子组件。

<div id="app-7">
    <ol>
        <todo-item
            v-for="item in items"
            v-bind:todo="item"
            v-bind:key="item.id">
        </todo-item>
    </ol>
</div>

Vue.component('todo-item', {
  props: ['todo'],
  template: '<li>{{ todo.text }}</li>'
});
var app7 = new Vue({
  el: '#app-7',
  data: {
    items: [
      { id: 0, text: '蔬菜' },
      { id: 1, text: '奶酪' },
      { id: 2, text: '随便其他什么人吃的东西' }
    ]
  }
})
目录
相关文章
|
3月前
|
JavaScript 前端开发 索引
Vuejs基础版III
Vuejs基础版III
|
3月前
|
缓存 JavaScript
Vuejs基础版II
Vuejs基础版II
|
5月前
|
JavaScript 前端开发
vuejs及相关工具介绍
vuejs及相关工具介绍
26 0
|
3月前
|
存储 JavaScript 前端开发
Vuejs基础版I
Vuejs基础版I
|
3月前
|
JavaScript 前端开发 测试技术
Vuejs基础版V
Vuejs基础版V
|
3月前
|
JavaScript 前端开发 CDN
Vue3.0快速入门(速查)
Vue3.0快速入门(速查)
20 0
|
8月前
|
JavaScript 前端开发 小程序
Vue 富文本编辑器tinymce的安装教程(前端必备小知识)
Vue 富文本编辑器tinymce的安装教程(前端必备小知识)
218 1
|
8月前
|
前端开发
前端学习笔记202305学习笔记第二十二天-vue3.0-图标库安装使用
前端学习笔记202305学习笔记第二十二天-vue3.0-图标库安装使用
35 0
|
8月前
|
JavaScript
Vue富文本编辑器使用教程
Vue富文本编辑器使用教程
176 0
|
11月前
|
XML 存储 前端开发
React系列教程(1)ReactJS快速入门
React系列教程(1)ReactJS快速入门
96 0