第2章 项目准备工作
栏目: JavaScript · 发布时间: 5年前
内容简介:内容均为《Vue2.0开发企业级移动端音乐Web App 》学习笔记包括项目需求分析、脚手架初始化代码、项目目录介绍及图标字体、公共样式等资源的准备 。stylus文件夹
内容均为《Vue2.0开发企业级移动端音乐Web App 》学习笔记
包括项目需求分析、脚手架初始化代码、项目目录介绍及图标字体、公共样式等资源的准备 。
1、公共资源准备
stylus文件夹
文件名称 | 描述 |
---|---|
variable.styl | 样式变量文件(如颜色定义规范,文字大小规范) |
reset.styl | 重置默认样式文件 |
base.styl | 基本样式(body,html,在此可能会引用variable.styl 来使用它的变量) |
icon.styl | 字体图标 |
index.styl | 主体样式(引入reset.styl、base.styl 、icon.styl ) |
fonts文件夹
文件名称 | 描述 |
---|---|
music-icon.ttf | 字体文件 |
image公用图片
2、脚手架初始化代码
vue init webpack vue-music 复制代码
- 是否需要路由 y
- 是否使用eslint y
- 是否用单元测试 n
- 是否用e2e测试 n
cd vue-music cnpm install cnpm run dev 复制代码
3、建立项目文件,使得项目结构更加清晰
src文件目录 | 描述 |
---|---|
api | 数据交互 |
common | 公共的字体图片样式脚本文件 (font 放字体 、image 图片、js 插件、stylus 样式) |
components | 组件文件 |
router | 路由文件 |
store | vuex集中管理状态 |
4、修改eslint的配置规则 (.eslintrc文件)
使用beauty美化代码之后,一般地,代码会符合eslint的校验要求。但是,禁止函数圆括号之前有一个空格(space-before-function-paren)和文件末尾保留一行空行(eol-last)这两个规则 ,在beauty中没有对应的匹配规则。如果,这两个要求不是非要遵守,可以在.eslintrc文件中,将其设置为0
'eol-last': 0, 'space-before-function-paren': 0 复制代码
这样,在编写代码时,不用考虑代码格式。保存时,自动被美化,且符合eslint的校验要求
扩展
- 用vscode的话,可以在vscode安装eslint插件
- 齿轮图标-设置-输入autoFixOnSave-打上勾
这样可以在每次保存的自动格式化,但是默认只支持 javascript .js 文件
- 齿轮图标-设置-输入validate -打上勾给需要自动格式化的文件,默认是全勾选的
这样一旦保存的话,就可以将自己的代码自动格式化为符合eslint规则的代码哦
5、安装插件
babel-runtime和babel-polyfill 插件可以让一些低版本浏览器对es6的支持
cnpm install --save babel-runtime cnpm install --save-dev babel-polyfill cnpm install --save fastclick 复制代码
- babel-polyfill Babel 默认只转换新的 JavaScript 语法,而不转换新的 API。例如,Iterator、Generator、Set、Maps、Proxy、Reflect、Symbol、Promise 等全局对象,以及一些定义在全局对象上的方法(比如 Object.assign)都不会转译。 如果想使用这些新的对象和方法,则需要为当前环境提供一个polyfill
- babel-runtime babel-runtime 是为了减少重复代码而生的。 babel-polyfill解决了Babel不转换新API的问题,但是直接在代码中插入帮助函数,会导致污染了全局环境,并且不同的代码文件中包含重复的代码,导致编译后的代码体积变大。 (比如:上述的帮助函数_defineProperty有可能在很多的代码模块文件中都会被插入) Babel为了解决这个问题,提供了单独的包babel-runtime用以提供编译模块的 工具 函数, 启用插件babel-plugin-transform-runtime后,Babel就会使用babel-runtime下的工具函数 (请参考: babel-runtime和babel-polyfill的作用介绍和使用 )
- fastclick 解决移动端300ms延迟
6、在vue-cli脚手架使用插件
import 'babel-polyfill'// 引入babel-polyfill import fastclick from 'fastclick'// 引入fastclick fastclick.attach(document.body)// 使用fastclick 复制代码
7、安装stylus stylus-loader
cnpm install stylus stylus-loader --save-dev 复制代码
8、文件路径配置
当我们引入common下的文件时,我们平时可能这样写
import './common/stylus/index.styl' 复制代码
现在我们可以在webpack.base.conf.js,看resolve这个函数 __dirname为当前目录build,..(往上找)到dir对应的目录。
function resolve (dir) { return path.join(__dirname, '..', dir) } 复制代码
在webpack.base.conf.js 配置
resolve: { extensions: ['.js', '.vue', '.json'], alias: { 'vue$': 'vue/dist/vue.esm.js', '@': resolve('src'), 'common': resolve('src/common'), 'components': resolve('src/components'), 'base': resolve('src/base'), 'api': resolve('src/api'), } }, 复制代码
这样我们就可以直接这样写了
import 'common/stylus/index.styl' 复制代码
以上所述就是小编给大家介绍的《第2章 项目准备工作》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- Golang实现简单爬虫框架(1)——项目介绍与环境准备
- 用 Go 开发接口服务--准备项目所需的 Go 类包
- php – Laravel:一般错误:1615准备好的声明需要重新准备
- 详解Openstack环境准备
- 深度有趣 | 02 准备工作
- 2019 面试准备 - 图片
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
CLR via C#
Jeffrey Richter / 周靖 / 清华大学出版社 / 2015-1-1 / CNY 109.00
《CLR via C#(第4版)》针对CLR和.NET Framework 4.5进行深入、全面的探讨,并结合实例介绍了如何利用它们进行设计、开发和调试。全书5部分共29章。第Ⅰ部分介绍CLR基础,第Ⅱ部分解释如何设计类型,第Ⅲ部分介绍基本类型,第Ⅳ部分以核心机制为主题,第Ⅴ部分重点介绍线程处理。 通过本书的阅读,读者可以掌握CLR和.NET Framework的精髓,轻松、高效地创建高性能......一起来看看 《CLR via C#》 这本书的介绍吧!