1. 安装nodejs
  2. 安装vue-cli
    npm install -g vue-cli
  3. 使用vue-cli初始化项目
    vue init webpack my-project
  4. 进到目录
    cd my-project
  5. 安装依赖
    npm install
  6. 添加sass
    npm install node-sass --save-dev
    npm install sass-loader --save-dev
    打开build文件夹下webpack.base.config.js在rules里面加上
    {
        test: /\.scss$/,
        loaders: ["style", "css", "sass"]
    },
    在用scss的地方写上
    <style lang="scss" scoped="" type="text/css"></style>

  7. 全局引入sass配置文件,不必单个组件引入,安装依赖模块
    npm install sass-resources-loader --save-dev


    在项目build目录的utils.js添加如下代码:

      // =========
    // SASS 配置
    // =========
    function resolveResouce(name) {
    return path.resolve(__dirname, '../src/common/scss/' + name);
    }
    function generateSassResourceLoader() {
    var loaders = [
    cssLoader,
    // 'postcss-loader',
    'sass-loader',
    {
    loader: 'sass-resources-loader',
    options: {
    // it need a absolute path,全局sass文件名称,目录位置存放在resolveResouce函数中
    resources: [resolveResouce('var.scss'), resolveResouce('mixins.scss')]
    }
    }
    ];
    if (options.extract) {
    return ExtractTextPlugin.extract({
    use: loaders,
    fallback: 'vue-style-loader'
    })
    } else {
    return ['vue-style-loader'].concat(loaders)
    }
    }
    // =========
    // SASS 配置 end
    // =========

    修改utils.js配置

  8. 开始运行
    npm run dev
  9. 设置代理
    找到config文件夹中的index.js,在proxyTable字段中添加如下内容,详细配置参考https://github.com/chimurai/http-proxy-middleware
  10. eslint相关配置
    添加static文件夹下js文件检查,build文件夹中webpack.base.conf.js文件修改如下:
    , resolve('static')

    默认eslint会强制不要分号,而js书写规范更好的是强制分号,根目录.eslintrc.js修改如下:
    , 'semi': ['error', 'always']
  11. 打包相关
    运行命令:npm run build

    打包时处理文件为相对路径
      方法1:找到config文件夹中的index.js,打开修改assetsPublicPath为“./”
      方法2:build文件夹中webpack.prod.conf.js 中output添加参数publicPath:'./'

    设置config文件夹index.js中productionSourceMap的值为false,也就是设置webpack配置中devtool为false,打包后文件体积可以减少百分之八十!!!!!!!

    如何实现打包文件中js、css等的版本控制?
    设置build文件夹下的webpack.prod.conf.js中HtmlWebpackPlugin插件配置参数添加hash: true,即会使打包生成的index.html中的js和css路径带有?+随机字符串

vue-cli使用笔记的更多相关文章

  1. Spring Boot +Vue 项目实战笔记(一):使用 CLI 搭建 Vue.js 项目

    前言 从这篇文章开始,就进入真正的实践了. 在前端项目开发中,我们可以根据实际情况不同程度地使用 Vue.利用 Vue CLI(或写成 vue-cli,即 Vue 脚手架)搭建出来的项目,是最能体现 ...

  2. Vue.js学习笔记(2)vue-router

    vue中vue-router的使用:

  3. Vue.js 组件笔记

    Vue 组件总结笔记 一. 创建组件 1. 使用组件三部曲 ( 创建, 注册, 使用 ) 2. 全局组件:Vue.component('tag', {}); 3. 局部组件: components 属 ...

  4. vue cli 3.x 项目部署到 github pages

    github pages 是 github 免费为用户提供的服务,写博客,或者部署一些纯静态项目. 最近将 vue cli 3.x 初始化项目部署到 github pages,踩了一些坑,记录如下. ...

  5. @vue/cli 3.0 使用 svg-sprite-loader 加载本地 SVG 文件

    目录 @vue/cli 3.0 使用 svg-sprite-loader 加载本地 SVG 文件 运行 使用 配置 svg-sprite-loader 调用当前环境下的颜色 props @vue/cl ...

  6. vue.js 学习笔记3——TypeScript

    目录 vue.js 学习笔记3--TypeScript 工具 基础类型 数组 元组 枚举 字面量 接口 类类型 类类型要素 函数 函数参数 this对象和类型 重载 迭代器 Symbol.iterat ...

  7. vue cli使用融云实现聊天

    公司有个项目要实现一个聊天功能,需求如下图,略显随意 公司最终选择融云这个吊炸天的即时通信,文档详细的一匹,刚开始看文档感觉很详细实现起来也不麻烦,有很多开源的demo可以在线演示和下载 不过我们的项 ...

  8. Vue CLI 3.0脚手架如何在本地配置mock数据

    前后端分离的开发模式已经是目前前端的主流模式,至于为什么会前后端分离的开发我们就不做过多的阐述,既然是前后端分离的模式开发肯定是离不开前端的数据模拟阶段. 我们在开发的过程中,由于后台接口的没有完成或 ...

  9. Vue CLI 3使用:浏览器兼容性

    package.json 文件里的 browserslist 字段 (或一个单独的 .browserslistrc 文件),指定了项目的目标浏览器的范围.这个值会被 @babel/preset-env ...

  10. 基于vue cli 3.0创建前端项目并安装cube-ui

    前提条件: 安装node.js. 国内的开发者最好先配置淘宝镜像. 之后用cnpm来代替npm命令. 项目创建过程: 打开cmd,输入命令进入目标工作空间,以本机项目为例: cd /d d: cd D ...

随机推荐

  1. WPF 判断一个对象是否是设计时的窗口类型,而不是运行时的窗口

    原文:WPF 判断一个对象是否是设计时的窗口类型,而不是运行时的窗口 当我们对 Window 类型写一个附加属性的时候,在属性变更通知中我们需要判断依赖对象是否是一个窗口.但是,如果直接判断是否是 W ...

  2. 记录个超级Update语句

    -- UPDATE UPDATE affair_list SET deleteState = WHERE gid IN ( SELECT tt.gid FROM ( SELECT a.gid FROM ...

  3. spring Boot 学习(三、Spring Boot与检索)

    一.检索我们的应用经常需要添加检索功能,开源的 ElasticSearch 是目前全文搜索引擎的 首选.他可以快速的存储.搜索和分析海量数据.Spring Boot通过整合Spring Data El ...

  4. 1.ASP.NET Core 中向 Razor Pages 应用添加模型

    右键单击“RazorPagesMovie”项目 >“添加” > “新建文件夹”. 将文件夹命名为“Models”.右键单击“Models”文件夹. 选择“添加” > “类”. 将类命 ...

  5. k8s--yml文件3

  6. Assignment 2: UDP Pinger[课后作业]

    Computer Networking : A Top-Down Approach 的课后作业. 要求: 基于UDP协议,实现一个Pinger工具. 服务端代码已经提供了,自己实现客户端的代码. 完整 ...

  7. python基础之猜数字游戏

    #猜数字游戏 import random #impor语句导入random模块 guessor=0; print("#"*30) #输出30个”#“(”############## ...

  8. 把项目中的vant UI组件升级

    首先把之前 的VANT 卸载掉 npm uninstall vant 然后重新安装 一次vant npm i vant -S

  9. 英语juelrye宝石

    juelrye  外语词汇,代指宝石珠宝稀有的物件 中文名珠宝装饰 外文名juelrye 目录 释义 juelrye Noun(名词) Uncountable(不可数) 1. juelrye des ...

  10. 给用过SAP CRM中间件的老哥老姐们讲讲SAP CPI

    最近Jerry由于项目需要,又得学习一个新工具:SAP Cloud Platform Integration,简称CPI,以前又叫做HCI - HANA Cloud Platform Integrat ...