vue 使用Jade模板写html,stylus写css
vue 使用Jade模板写html,stylus写css
vue 使用Jade模板写html,stylus写css
日常工作都是使用vue开发页面和webApp,写的多了就想偷懒简化各种书写方式,所以使用了jade写html,stylus写css,省了很多的步骤和提高了效率。
安装包:
// 安装jade包
npm install jade jade-loader --save-dev
// 如果使用vue-cli构建项目,则不需要安装stylus相关的包,vue-cli默认已安装
npm install stylus stylus-loader --save-dev
配置文件:
// webpack.base.conf.js 配置
// jade
{
test : /\.jade$/,
loader : 'jade-loader',
}
// stylus 如果使用vue-cli构建,无需配置此项
{
test : /\.styl$/,
loader : 'stylus-loader',
}
jade使用前后对比:
// html 模板 <template> <div class='demo-components'> <h2>测试标题</h2> <p> <span class='text'>这是一条测试的demo文本</span> <i class='icon'></i> </p> <input v-model='value1' @keydown.enter='loginIn'> <p>{{ oneText + "-" + "twoText" }}</p> </div> </template>
// jade 模板 <template lang='jade'> div.demo-components h2 测试标题 p span.text 这是一条测试的demo文本 i.icon input(v-model='value1',@keydown.enter='loginIn') p {{ oneText + "-" + twoText }} </template>
使用Jade注意事项
- 需要简单了解jade基本使用语法(10分钟简单了解即可)
- template 需要加上
lang='jade'
属性 - 标签内文本换行会解析错误,需要使用其他技巧性方法解决。
<template lang='jade'> div p 我是测试文本哇,可是文本太长需要换行啊,我恰巧回车试一 下啊,啊呀,报错啦!! </template> // 可以写进一个变量里、或方法中返回数据、或保持一行不换行
stylus 前后对比:
<style lang='css'> // css less sass scss 样式demo此处省略 // stylus demo <style lang='stylus'> .main-body width 300px heihgt 200px background-color rgba(0,0,0,1) .main-model width 50px height 50px margin 20px auto </style>
- stylus 可以使用极简的方式写css,也可以格式混合(为了保持格式统一,不建议),将解析的任务交给webpack去做,我们只需要书写简单易读的代码即可。这是我喜欢的风格和方式,sass当然也可以做到,只是个人的机缘巧合现在使用了stylus。