ps:初入Vue坑的小伙伴们,对于独立做一个项目可能不清楚需要使用哪些资源,这篇随笔希望对大家有所帮助。
第一步:参照vue的官方文档,建立一个vue的项目
# 全局安装 vue-cli $ npm install --global vue-cli (如果电脑上面已有vue项目并能正常运行,基本上代表已全局安装此步,那么就可跳过此步,执行第二步,如果执行第二步的时候报第一步的错误,再执行第一步即可) # 创建一个基于 webpack 模板的新项目 $ vue init webpack my-project # 切换到新建文件夹 $ cd my-project # 安装node-modules模块里面的包
(我之前在这一块遇到坑(当时在node-modeles文件夹里面去执行npm install 命令,导致包一直不能正常下载,小伙伴们千万不要踩坑啦),执行npm install 一定要在node-modules文件夹外面,) npm install / cnpm install(要安装cnpm) # 运行vue项目 $ npm run dev
第二步:一般需要安装的资源(如果项目对资源版本没有要求的话,一般下载的资源都是最新的哟)
"axios": "接口请求", "babel-polyfill": "最新语法的解析", "fastclick": "移动端click", "qrcanvas-vue": "二维码", "swiper": "轮播图", "vue": "vue框架", "vue-router": "路由跳转", "vuex": "状态管理器",
ps:资源后面的文字是我自己的理解,如果有问题也请小伙伴们帮忙指正。
第三步: 部分资源需要修改或创建文件及引入
1,axios需要创建一个文件夹,对get或post请求进行封装(不允许跨域)
2,fastclick 需要在main.js里面写入此句代码
// 修复点击300ms延迟 if ('addEventListener' in document) { document.addEventListener('DOMContentLoaded', () => { FastClick.attach(document.body) }, false) }
3,swiper使用此插件需要引入swiper.min.css
4,vuex需要创建一个文件夹store,在里面建一个store.js文件,写入此句代码
import Vue from 'vue' import Vuex from 'vuex' const sessionStoragePlugin = store => { store.subscribe((mutation, state) => { Object.keys(state).forEach((item, index) => { window.sessionStorage.setItem(item, JSON.stringify(state[item])) }) }) } Vue.use(Vuex) export default new Vuex.Store({ plugins: [sessionStoragePlugin] }) 最后这个store要挂载在main.js实例里面
new Vue({ el: '#app', router, store, components: { App }, template: '<App/>' })