搭建Vue2+Vuex+Webpack+Pug(jade)+Stylus环境
一、开发环境配置
开始之前,假设你已经安装了最新版本的 node 和 npm。
全局安装 vue-cli 和 webpack :
npm install vue-cli webpack -g
创建工程;工程名字不能用中文,英文也建议小写。
vue init webpack 项目名
按照步骤一步一步执行,需要你添加 Project name,Project description,Author.

然后使用 npm install 安装官方库。
然后使用npm run dev运行我们的项目后浏览器会自动弹出,并展示以下页面。

可以根据页面给我们的这八个链接获得我们想要的学习资源。
接下来安装Vue全家桶。
npm install vue-router vue-resource vuex --save
如下修改src/main.js :
import Vue from 'vue'
import VueResource from 'vue-resource'
import VueRouter from 'vue-router'
import Vuex from 'vuex' import App from './App.vue' Vue.use(VueResource)
Vue.use(VueRouter)
Vue.use(Vuex) new Vue({
el: '#app',
render: h => h(App)
})
安装html模板语言pug(jade)
npm install pug pug-loader pug-filters --save
安装css 预编译语言stylus
npm install style-loader stylus stylus-loader --save
# 或者你习惯用sass或less
# npm install style-loader node-sass sass-loader --save
# npm install style-loader less less-loader --save
打开webpack.config.js,配置loader:
module: {
rules: [
{
test: /\.vue$/,
loader: 'vue-loader',
options: {
loaders: {
}
// other vue-loader options go here
}
},
{
test: /\.pug$/,
loader: 'vue-html!pug-html'
},
{
test: /\.styl/,
loader: "style-loader!css-loader!stylus-loader"
},
...
生成html文件,安装插件` html-webpack-plugin `。
npm install html-webpack-plugin --save
var path = require('path')
var webpack = require('webpack')
var HtmlWebpackPlugin = require('html-webpack-plugin')
module.exports = {
entry: './src/main.js',
output: {
path: path.resolve(__dirname, 'dist'),
filename: 'js/build.js',
},
...
plugins: [
new HtmlWebpackPlugin({
title: 'Charles 的个人主页',
filename: 'index.html', //生成后的文件名,默认为 index.html.
template: 'index.html', //自定义的模板文件
inject:'body' //script标签位于html文件的 body 底部
}),
]
}
提取CSS,提取CSS的插件叫`extract-text-webpack-plugin`,这个不是webpack自带的,需要自己安装。
npm install extract-text-webpack-plugin --save
原来的`style-loader`就要修改了,毕竟我们的目标是将CSS提取出来而不是放在head中, 并且vue文件中<style>里的样式也要提取出来。
var HtmlWebpackPlugin = require('html-webpack-plugin')
var ExtractTextPlugin = require("extract-text-webpack-plugin")
module.exports = {
...
module: {
rules: [
{
test: /\.vue$/,
loader: 'vue-loader',
options: {
loaders: {
stylus: ExtractTextPlugin.extract("css-loader!stylus-loader")
}
}
},
{
test: /\.pug$/,
loader: 'vue-html!pug-html'
},
{
test: /\.styl/,
loader: ExtractTextPlugin.extract("css-loader!stylus-loader")
},
...
plugins: [
new HtmlWebpackPlugin(),
new ExtractTextPlugin("css/style.css")
]
搭建Vue2+Vuex+Webpack+Pug(jade)+Stylus环境的更多相关文章
- 一步步构造自己的vue2.0+webpack环境
前面vue2.0和webpack都已经有接触了些(vue.js入门,webpack入门之简单例子跑起来),现在开始学习如何构造自己的vue2.0+webpack环境. 1.首先新建一个目录vue-wk ...
- 基于vue2+vuex+vue-router+sass+webpack的网易云音乐
[本博客为原创:http://www.cnblogs.com/HeavenBin/] 前言: 这段时间写的一个项目,供给大家互相学习,有什么疑问可以issues我. 源码地址:https://git ...
- 搭建 vue2 单元测试环境(karma+mocha+webpack3)
从网上找了很多例子关于单元测试,都是如何新建项目的时候的添加单元测试,用vue-cli中怎么添加,但是我的项目已经生成了,不能再一次重新初始化,这时如何添加单元测试,这里面遇到了好多坑,写在这里记录一 ...
- vue2.0中使用pug(jade)
第一部分:pug(jade)模板引擎 pug,原名jade,是流行的HTML模板引擎,它是HAML在JavaScript上的实现,最大的特色是使用缩进排列替代成对标签. 它简化了HTML的成对标签的写 ...
- 详解 Webpack+Babel+React 开发环境的搭建
1.认识Webpack 构建应用前我们先来了解一下Webpack, Webpack是一个模块打包工具,能够把各种文件(例如:ReactJS.Babel.Coffeescript.Less/Sass等) ...
- Vue2.0+Webpack项目环境构建到发布
前言:为什么要用webpack搭建项目呢,因为这个工具可以把目前浏览器不全部支持的ES6语法,通过打包工具生成所有浏览器都支持的单个JS文件. 参考: https://blog.csdn.net/u0 ...
- vue_使用npm搭建vue2.0脚手架开发环境
前言: 在使用vue进行开发时需要搭建vue的运行环境,这里主要是使用淘宝镜像cnpm进行搭建vue的脚手架开发环境.主要是分为mac和window两个版本,两个环境的搭建都是大同小异. mac开发环 ...
- webpack+babel+ES6+react环境搭建
webpack+babel+ES6+react环境搭建 步骤: 1 创建项目结构 注意: 先创建一个项目目录 react 这个名字自定义,然后进入到这个目录下面 mkdir app //创建app ...
- 从零开始搭建一个简单的基于webpack的vue开发环境
原文地址:https://segmentfault.com/a/1190000012789253?utm_source=tag-newest 从零开始搭建一个简单的基于webpack的react开发环 ...
随机推荐
- Python3学习之路~6.5 私有属性和私有方法
属性分为静态属性和动态属性,静态属性就是变量,动态属性就是方法.但是一般我们说的属性就是变量,方法就是方法.私有属性/方法就是外面访问不了,只有自己能够访问的属性/方法.如何将属性和方法分别变成私有属 ...
- jmeter测试文件上传接口报错:connection reset by peer: socket write error
最近在对文件上传接口性能测试时,设置150线程数并发时,总会出现以下错误:connection reset by peer: socket write error 在网上搜索了一下,得到的原因有这些: ...
- 011-docker-安装-rabbitmq-management:3.7.13
1.搜索镜像 docker search rabbitmq 2.拉取合适镜像 选择合适tag:https://hub.docker.com/,下载3.7.13 带web管理界面版本 docker pu ...
- PowerTCP FTP for .NET 在线e文文档
http://www.dart.com/help/ptftpnet/webframe.html
- wx 文件编辑框
# -*- coding: utf- -*- import wx import os class my_frame(wx.Frame): """This is a sim ...
- 解决npm ERR! Unexpected end of JSON input while parsing near的方法汇总
参考链接:https://segmentfault.com/a/1190000015646531
- Kinect2.0获取数据
最近事情真是多,今天抽空研究一下Kinec2.0的数据获取! 系统要求 https://developer.microsoft.com/en-us/windows/kinect/hardware-se ...
- 阿里云RDS备份在本地mysql快速还原
本地准备: ##安装和RDS相同的mysql版本,拿mysql5.6为例 http://www.cnblogs.com/37yan/p/7513605.html ##安装Xtrabackup 包 cd ...
- windows server 2008 R2如何更换系统界面语言/中文换英文
下面我们来讲解一下如何将中文系统转化成日文.韩文.英文等其它语言界面的系统. 以windows server 2008 R2系统中文变英文为例: 1.到微软官方下载:Windows Server 20 ...
- ntpdate 正确的做法
网上很多搜到的资料都是过时的,主要是时间服务器不能用,不管是国内的还是国外的 1. yum -y install ntp ntpdate 2. 在/etc/crontab中,加入: 0 0 0 * 1 ...