一种css预处理器,能够更加直观的编写css代码,减小没必要要的格式css
下载:vue
npm install stylus
复制代码
使用:ios
一个用于提升滑动体验的库,可让移动端的滑动体验更接近于原生APPnpm
下载:仍然是npm下载或script标签引入,没什么好说的axios
使用也很是简单:api
用于实现轮播图的插件,相似于这样的:promise
下载:npm install swiper,或是去官网下载压缩包后引入对应的js文件和css文件bash
使用:经过一段示例demo来看,这是swipper.vue:服务器
<template style="touch-action:none;">
<swiper :options="swiperOption" class=wrapper>
<swiper-slide v-for="item of swiperList" :key="item.id">
<img class="swiper-img" v-bind:src="item.imgUrl">
</swiper-slide>
<div class="swiper-pagination" slot="pagination"></div>
<div class="swiper-button-prev" slot="button-prev"></div>
<div class="swiper-button-next" slot="button-next"></div>
<div class="swiper-scrollbar" slot="scrollbar"></div>
</swiper>
</template>
<script>
export default {
name: 'carrousel',
props:['swiperList'],
data () {
return {
swiperOption: {
loop:true,
pagination:{
el:'.swiper-pagination',
clickable:true,
},
navigation: {
nextEl: '.swiper-button-next',
prevEl: '.swiper-button-prev',
},
scrollbar: {
el: '.swiper-scrollbar',
},
}
}
}
}
</script>
复制代码
一个vue官方推荐的基于promise的http库,用于进行数据请求并发
最多见的使用场景以下:
import axios from 'axios' //首先引入
//发送get请求
axios
.get('URL')//能够直接在URL中添加参数
.then(response => (this.info = response))//请求成功
.catch(function (error) { // 请求失败处理
console.log(error);
});
axios
.get('/user', {// 也能够经过 params 设置参数:
params: {
ID: 12345
}
})
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
});
//发送post请求
axios.post('/user', {
firstName: 'Fred', // 参数 firstName
lastName: 'Flintstone' // 参数 lastName
})
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
});
//发送多个并发请求
function getUserAccount() {
return axios.get('/user/12345');
}
function getUserPermissions() {
return axios.get('/user/12345/permissions');
}
axios.all([getUserAccount(), getUserPermissions()])
.then(axios.spread(function (acct, perms) {
// 两个请求如今都执行完成
}));
//经过向axios传递参数来进行请求
// 发送 POST 请求
axios({
method: 'post',
url: '/user/12345',
data: {
firstName: 'Fred',
lastName: 'Flintstone'
}
});
// GET 请求远程图片
axios({
method:'get',
url:'http://bit.ly/2mTM3nY',
responseType:'stream'
})
.then(function(response) {
response.data.pipe(fs.createWriteStream('ada_lovelace.jpg'))
});
//能够只传入url,发送 GET 请求(默认的方法)
axios('/user/12345');
//相应函数中接收的response对象含有的信息:
{
// `data` 由服务器提供的响应
data: {},
// `status` HTTP 状态码
status: 200,
// `statusText` 来自服务器响应的 HTTP 状态信息
statusText: "OK",
// `headers` 服务器响应的头
headers: {},
// `config` 是为请求提供的配置信息
config: {}
}
复制代码
解决非父子组件传值的问题。多用于大型单页应用之中,对于小型项目多是一种多余的存在
使用:下载并引入Vuex,用Vue.use(Vuex)方法来使用Vuex,并export一个Store实例,实例中有存放数据的state,actions,mutations和getters
Vue.use(Vuex)
export default new Vuex.Store({
state:{
city:"bj"
},
actions:{
changeCity(ctx,city){
ctx.commit('changeCityShowing',city)
}
}
mutations:{
changeCityShowing(state,city){
state.city=city;
try {
localStorage.city=city;
} catch (error) {};
}
}
getters:{
reverse(){
return state.city.split('').reverse().join("");
}
}
})
复制代码
computed:{
...mapGetters(['name1',‘name2’])
//...
}复制代码