从零开始写博客

基于vue-cli3从零开始开发个人博客

创建github仓库

  1. 点击github主面板new按钮

  1. 仓库预设

  1. 给仓库加点料

  1. 创建本地仓库

  1. 创建忽略文件 .gitignore

以上都是废话,现在开始构建vue-cli3的项目。

  1. 初始化一个项目

  1. 选择配置

  1. 从第三步的給仓库加点料开始走一遍,当然你会发现README.MD.gitignore已经存在了,不要紧。因为上面写的都是废话。

  2. 按提示输入命令进入项目

  1. 访问本地运行项目

  1. 基本上你能看到如下页面

基本配置环节

  1. 根目录下创建 vue.config.js

  1. 配置目标浏览器支持列表,用于不同环境下的浏览器支持同步,在 package.json中配置

使用命令查看你的支持的目标浏览器


npx browserslist

复制代码

3.bable 通过浏览器列表获得用户产品对于浏览器的支持程度,从而进行语法支持。该选项目前采用预设,因为你不确定最终构建时将使用到的垫片支持

  1. 使用现代模式 在package.json中添加 现代模式

  1. 添加样式预处理器,我用less 因为sass安装麻烦,二者语法比较相像

npm install -D less-loader less

复制代码
  1. 根目录下创建全局变量配置文件


.env	//基本全局变量
.env.devlopment  //对应开发模式的全局变量
.env.production	// 生产模式

复制代码
  1. 添加chain 和 conf的颗粒度控制文件

conf具有同等的配置

  1. 添加单元测试 mocha

vue add @vue/unit-mocha

  1. 添加mockjs 分离开发模拟数据在easy mock上编写你的mock

npm i -D mockjs

src目录下创建 mock.js

在项目根目录添加mocks文件夹

mock.js

  1. 添加 vuex, vue-router,axios等文件与配置

axios 在src目录下创建 api文件夹,加入index.js文件


import Axios from 'axios'

const instance = Axios.create({
    // baseURL: 'http://localhost:4560',
    headers: {
        // 'Content-Type': 'application/json',
        'Content-Type':'application/x-www-form-urlencoded'
    }
})

// 请求拦截
instance.interceptors.request.use(function (conf) {
    window.console.log(conf)
    return conf
}, function (err) {
    window.console.log(err)
    return Promise.reject(err)
})

// 响应拦截
instance.interceptors.response.use(res => {
    window.console.log(res)
    return res
}, err => {
    window.console.log(err)
    return Promise.reject(err)
})



export default {
    /* eslint-disable */
    install(Vue, options) {

        Vue.prototype.$api = Object.create(null)

        Vue.prototype.$api.get = function(url, data){

            return new Promise((resolve, reject) => {

                instance.get(url,data).then(res => {

                    resolve(res)
                }).catch( err => {

                    reject(err)
                } )

            })

        }
    }
}

复制代码

在main.js使用 Vue.use(axios)挂载插件

创建src/routers/router.js

挂载vue-router

修改你的app.vue 并添加src/views/index.vue

app.vue

index.vue(主页面文件)

对于之前sass安装失败目前的解决方法是

npm install node-sass sass-loader scss-loader --save-dev

如果使用简写命令安装可能会报错,导致安装失败

编码环节

1. 在public文件夹下添加资源文件夹


├─fonts
├─icons
├─images
├─lib
└─svg

复制代码

2. 在 styles 下添加各种scss文件,包括样式重置,兼容性,混入,变量,媒体查询等样式表

3. 在index.vue 页面划分页面结构








复制代码

采用组件的方式编写侧边栏 LeftSideBar.vue











复制代码

添加侧边栏的子组件









复制代码

目前的基本效果图

避免篇幅过长后面将不展示源码

4. 使用easy开发api和模拟数据

  1. 打开easy mock 添加账号

  2. 创建项目

  1. 点击创建接口,左侧注入灵魂,右侧加入接口配置

  1. 接下来编写 右侧主要内容区的nav组件,为组件添加动图 logo。

使用ps6 裁剪你要的图形大小,打开一个 80x60 的gif图

按enter应用裁剪

接下来使用 UGA5TBYB 压缩gif

其实就缩小了20k,但是gif占字节比较大,不得不优化,另外使用该软件可以合并精灵图

妈耶,累死了,暂时出到这里。什么时候有时间了再写吧。

转载于:https://juejin.im/post/5d08f837f265da1ba647ef33

你可能感兴趣的:(从零开始写博客)