Vue.js2.0作为国内热门并广为人知的前端框架,其与其他主流框架的优势在此不做过多赘述。搭建框架步骤如下:

转自;http://www.jianshu.com/p/beae26e57b0f

安装Node.js

搭建框架需要使用最新稳定版Node.js,请选择LTS版本。

tip1:如果本机有其它项目需要早期版本,建议利用NVM在本机分别部署多个版本的Node,以便在使用本框架时切换至最新稳定版即可。

tip2:无法翻墙的童鞋,建议使用cnpm,安装后在以下命令中将npm 替换成cnpm即可;

安装Git

运用vue-cli

本框架利用vue-cli脚手架快速搭建基础框架;

安装vue-cli
npm install -g vue-cli
使用webpack模板
vue init webpack my-project

本文示例运行于vue-cli(v2.8.1),命令行提示如下:

? Project name (my-project)                   //请输入项目名称,回车默认
? Project description (A Vue.js project) //请输入项目描述,回车默认
? Author xsl <398818817@qq.com> //请输入作者名,回车默认
? Vue build //请选择构建模式,请直接回车选择第一条
> Runtime + Compiler: recommended for most users
Runtime-only: about 6KB lighter min+gzip, but templates (or any Vue-specific
HTML) are ONLY allowed in .vue files - render functions are required elsewhere
? Install vue-router? Yes //是否安装vue-router,回车
? Use ESLint to lint your code? Yes //是否安装ESLint代码检查器,回车
//个人比较偏爱airbnb的编码规范,此处选择第二项
Standard (https://github.com/feross/standard)
>AirBNB (https://github.com/airbnb/javascript)
none (configure it yourself) ? Setup unit tests with Karma + Mocha? Yes //单元测试,请按需选择
? Setup e2e tests with Nightwatch? Yes //端到端测试,请按需选择

如果对于eslint报错并不明白的,可以参考eslint官方文档提供ESLint代码检查规则索引;

安装vendor

本框架中需要利用vue-router作为前端路由,如果与本示例相同版本vue-cli,无需单独引入,在初始化时直接选择安装即可;

本框架中需要运用Vuex作为公用状态管理,这基于业务功能的复杂度,可选用,引入方式如下;

//请进入工程文档目录中运行以下命令
npm install vuex --save

本框架是运用于搭建移动端APP,选用饿了么移动端UI库——mint UI

//请进入工程文档目录中运行以下命令
npm install mint-ui --save
部分框架提升
ES6+新特性支持

由于webpack模板里的babel默认只选用了ES2015以及stage-2,对于需要使用其它ES新特性来说,所以我们可能需要添加新的依赖,并修改babel配置;

npm install babel-preset-es2016 -D
npm install babel-preset-es2017 -D
npm install babel-preset-stage0 -D

.babelrc修改presets属性如下

"presets": [["es2015",{ "modules": false }],
"es2016",
"es2017",
"stage-0",
"stage-2"]],

按需引入

安装babel-plugin-component

npm install babel-plugin-component -D

.babelrc修改plugins属性如下

"plugins":"plugins": ["transform-runtime",["component", [
{
"libraryName": "mint-ui",
"style": true
}
]]],

这样我们就不必在需要在组件内单独引用mint UI样式。

webpack

我们选用的打包工具为webpack,正如你看到我们选用的是webpack的模板,虽然大量通用性配置已经配好,即使你不了解它并不会对使用框架产生影响,但作者还是建议你去了解他,特别是作者独家提供了中文版webpack2新手指南

基于Vue2 搭建移动端 webapp 框架的更多相关文章

  1. 第二篇 基于.net搭建热插拔式web框架(沙箱的构建)

    上周五写了一个实现原理篇,在评论中看到有朋友也遇到了我的问题,真的是有种他乡遇知己的感觉,整个系列我一定会坚持写完,并在最后把代码开源到git中.上一篇文章很多人看了以后,都表示不解,觉得不知道我到底 ...

  2. 第三篇 基于.net搭建热插拔式web框架(重造Controller)

    由于.net MVC 的controller 依赖于HttpContext,而我们在上一篇中的沙箱模式已经把一次http请求转换为反射调用,并且http上下文不支持跨域,所以我们要重造一个contro ...

  3. 基于.net搭建热插拔式web框架(实现原理)

    第一节:我们为什么需要一个热插拔式的web框架? 模块之间独立开发 假设我们要做一个后台管理系统,其中包括“用户活跃度”.“产品管理”."账单管理"等模块.每个模块中有自己的业务特 ...

  4. 第五篇 基于.net搭建热插拔式web框架(拦截器---请求管道)

    好了,前边我们把核心内容介绍完了,接下来要做的就是拦截用户的请求,并把请求转向沙箱内. 这里我们准备通过实现一个HttpModule类来完成请求的拦截与转发.新建一个HuberHttpModule类, ...

  5. 基于webpack搭建的vue+element-ui框架

    花了1天多的时间, 终于把这个框架搭建起来了. 好了, 不多说了, 直接进入主题了.前提是安装了nodejs,至于怎么安装, 网上都有教程. 这里就不多说了, 这边使用的IDE是idea.1.在E:/ ...

  6. asp.net -mvc框架复习(7)-基于MVC搭建用户登录项目框架

    整体框架: 一.搭建Model层 1.添加通用数据访问类 2.添加实体类(封装和传递数据,和数据库中数据表对应) 3.添加数据访问类(通常和实体类同名,但是后缀名发生改变) 二.搭建控制器层Contr ...

  7. 基于mpvue搭建小程序项目框架

    简介: mpvue框架对于从没有接触过小程序又要尝试小程序开发的人员来说,无疑是目前最好的选择.mpvue从底层支持 Vue.js 语法和构建工具体系,同时再结合相关UI组件库,便可以高效的实现小程序 ...

  8. vue2.x移动端ui框架选型

    前言 最近公司准备做移动端spa项目,需要选一个ui框架.优先考虑谷歌Material Design设计风格.针对市面上的框架进行了一次调研,简单总结如下. 选型原则:1. 优先考虑md风格. 2. ...

  9. 第四篇 基于.net搭建热插拔式web框架(RazorEngine实现)

    在开头也是先给大家道个歉,由于最近准备婚事导致这篇文章耽误了许久,同时也谢谢老婆大人对我的支持. 回顾上篇文章,我们重造了一个controller,这个controller中用到了视图引擎,我们的视图 ...

随机推荐

  1. Vulkan Tutorial 22 Index buffer

    操作系统:Windows8.1 显卡:Nivida GTX965M 开发工具:Visual Studio 2017 Introduction 在实际产品的运行环境中3D模型的数据往往共享多个三角形之间 ...

  2. 【2017年最新】iOS面试题及答案

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 20.0px "PingFang SC Semibold"; color: #46464 ...

  3. fedora安装QQ

    只看重利益的TC根本没想到要维护和更新linux版本的QQ,所幸fedora linux的中文社区 (https://repo.fdzh.org) 对大家比较照顾,还是针对fedora做了wine Q ...

  4. 一起学习c++11——c++11中的新语法

    c++11新语法1: auto关键字 c++11 添加的最有用的一个特性应该就是auto关键字. 不知道大家有没有写过这样的代码: std::map<std::string, std::vect ...

  5. 解决运行pytorch程序多线程问题

    当我使用pycharm运行  (https://github.com/Joyce94/cnn-text-classification-pytorch )  pytorch程序的时候,在Linux服务器 ...

  6. [leetcode-474-Ones and Zeroes]

    In the computer world, use restricted resource you have to generate maximum benefit is what we alway ...

  7. 10.解决VUEX刷新的时候出现数据消失

    通常,我们在使用vue编写页面时,会需要使用vuex在组件间传递(或者说共同响应)同一个数据的变化.例如:用户的登录信息. 下面,我们使用传递用户登录信息的例子来一步步解决这个问题. 首先,我们的第一 ...

  8. 7.modifier插件的自定义和使用

    1.在plugins下面创建一个文件 modifier.changeDate.php 编写: <?php function smarty_modifier_changeDate($utime,$ ...

  9. Visiual Studio CLR20r3

    问题事件名称: CLR20r3     解决方法:   步骤1:开始-->所有程序-->Microsoft Visual Studio 2012-->Visual Studio To ...

  10. Python3中的模块

    模块使用哪种语言实现并不重要,因为所有的模块导入与使用的方式都相同. 1.常用模块导入格式: import importable1,importable2,... import importable ...