初学者的vue笔记
来源:互联网 发布:江宁淳化街道网络问政 编辑:程序博客网 时间:2024/06/13 11:48
搭建
- 最新稳定版
- $ cnpm install vue
- 全局安装vue-cli
- $ cnpm install –global vue-cl
- 创建一个基于webpack的文件
- $ vue init webpack my-project
- cd my-project
- npm install
- npm run dev
注意:Use ESLint to lint your code? n
.vue文件中:
- HTML css js均在.vue文件下
- template标签定义模板
- script标签定义js
- style标签定义css
好处是可以在一个文件中同时编写html,css,js(当然还有更多好处,但是初学目前只接触了一点点,后面会补充)
代码块
new Vue({ el: '#app', //el:将此对象装载的位置放于..把 Vue 实例挂载到一个已有内容的元素上 template:'<div>{{ fruit }}</div>', //模板 data:{ fruit:'apple' //data的数据将会设置到代理的对象中 } })
data赋值的时候尽量避免以上这样赋值,不然如果有两个相同的模板,返回值都一样了,应该data(){return{}}这样赋值
Vue.component('my-header',{ template:'<p>this is my header</p>'}) //component组件可以扩展HTML元素,封装可重用代码,这个属于全局组件var myHeader = { template:'<p>this is my header</p>'}new Vue({ el:'#app', components:{ //my-header将只在父模板可用 'my-header':myHeader } })props 可以是数组或对象,用于接收来自父组件的数据。computed计算属性的结果会被缓存,除非依赖的响应式属性变化才会重新计算。watch:一个对象,键是需要观察的表达式,值是对应回调函数。值也可以是方法名,或者包含选项的对象。
keep-alive包裹动态组件时,会缓存不活动的组件实例,而不是销毁它们。主要用于保留组件状态或避免重新渲染。如果把切换出去的组件保留在内存中,可以保留它的状态或避免重新渲染。
transition:
name - string,用于自动生成 CSS 过渡类名。例如:name: ‘fade’ 将自动拓展为.fade-enter,.fade-enter-active等。默认类名为 “v”。
- 条件渲染 (使用 v-if)
- 条件展示 (使用 v-show)
- 动态组件
- 组件根节点
v-enter-active,v-leave-active是过度的类名,v-enter,v-leava-to是进入和离开一瞬间的类。
transition默认的模式是先进新的后进旧的
相同元素过度的时候需要添加一个key属性
<p v-if="show1" key='1'>i am show</p><p v-else key='2'>not in show</p>
//自定义指令的插入,如v-cssdirectives:{ css:{ inserted(el,binding){ // console.log(el,bind) let styleObj = binding.value //color:"red" console.log(styleObj) let arr = [] for (let key in styleObj) { arr.push(key + ':' + styleObj[key]) } arr = arr.join(';') console.log(arr) el.style.cssText = arr } } },
关于vue-router
使用 Vue.js 做项目的时候,一个页面是由多个组件构成的,所以在跳转页面的时候,并不适合用传统的 href,于是 vue-router 应运而生。
vue-router的引用方式:
\\在main.js中:import VueRouter from 'vue-router'Vue.use(VueRouter)let router=new VueRouter()\\在new Vue函数中添加router,
vue-resource实现获取AJAX数据(只能get()数据),json-server模拟数据
created: function(){ this.$http.get('getList').then(function(data){ console.log(data) },function(err){ console.log(err) }) },//在webpack.dev.conf.jsconst express = require('express')const app = express()var appData = require('../data.json') //加载本地数据文件var seller = appData.seller //获取对应的本地数据var goods = appData.goodsvar ratings = appData.ratingsvar apiRoutes = express.Router()app.use('/api', apiRoutes) //找到devServerbefore(app) { app.get('/api/seller', (req, res) => { res.json({ errno: 0, data: seller })//接口返回json数据,上面配置的数据seller就赋值给data请求后调用 }), app.get('/api/goods', (req, res) => { res.json({ errno: 0, data: goods }) }), app.get('/api/ratings', (req, res) => { res.json({ errno: 0, data: ratings }) }) }
阅读全文
0 0
- 初学者的vue笔记
- C#初学者的笔记
- 初学者的算法笔记
- c++初学者的笔记
- vue的笔记
- vue插件:vue-resource的使用笔记
- vue插件:vue-resource的使用笔记
- 【初学者】基于vue的简易webapp——todolist
- 【初学者】基于vue的webapp——豆瓣电影
- vue笔记----实例的生命周期
- Vue-学习他人的笔记
- vue 初学者报错总结
- 初学者笔记
- 初学者笔记
- Vue学习笔记(3)关于Vue的计算属性
- Vue 2.0的学习笔记: Vue实例和生命周期
- Vue笔记
- vue 笔记
- android studio ndk开发 操作流程
- selenium与firefox、 chrome版本对应关系
- 关于点击图片弹出遮罩层查看
- centos7 安装PostgreSQL
- 更改头像 相册/相机
- 初学者的vue笔记
- Oracle 11g exp导出 deferred_segment_creation参数配置
- lucene(五) 中文分词和高亮显示
- 【C#与.NET程序设计】(6)- C#垃圾回收及接口类型
- 源码解读----之-----k_means(被KMeans类调用)
- 706
- 海内外冬季买房有崛起,“望闻问谈”不可少!
- 分支限界法
- Android 屏幕适配:最全面的解决方案