认识Web前端、Web后端、桌面app和移动app新开发模式 - 基于Node.js环境和VS Code工具
认识Web、桌面和移动app新开发模式 - 基于Node.js环境和VS Code工具
一、开发环境的搭建(基于win10)
1、安装node.js和npm
- 到node.js官网下载安装包(包含npm)进行安装
- 验证node.js是否安装成功,在命令行窗口输入命令
node -v
通过查看版本进行验证 - 验证npm是否安装成功,在命令行窗口输入命令
npm -v
通过查看版本进行验证
2、配置npm包管理器
由于国外的镜像不稳定,所以一般需要配置淘宝NPM镜像,配置命令如下:
npm config set registry https://registry.npm.taobao.org
配置npm包的全局存放路径(默认路径C:\Users\JeffreyYu\AppData\Roaming\npm):
npm config set prefix "C:\Program Files\nodejs\node_global"
配置npm-cache的路径(默认路径C:\Users\JeffreyYu\AppData\Roaming\npm-cache):
npm config set cache "C:\Program Files\nodejs\node_cache"
3、安装配置cnpm包管理器(默认配置的是淘宝npm镜像)
- 安装命令如下:
npm install -g cnpm --registry=https://registry.npm.taobao.org
4、安装配置yarn包管理器
安装命令:
npm install -g yarn 或
cnpm install -g yarn
通过yarn包管理器都有会
yarn.lock
文件通过
yarn --version
命令验证是否安装成功配置淘宝镜像
yarn config set registry https://registry.npm.taobao.org
5、安装前端自动化构建工具
- gulp安装命令:
npm install -g gulp –registry=https://registry.npm.taobao.org
- grunt安装命令:
npm install -g grunt
Gulp/Grunt 可以理解为帮助前端自动化构建的工具,用于优化前端工作流程。比如自动刷新页面、combo、压缩css、js、编译less等等。推荐Gulp。
6、安装前端模块打包(预编译)工具
- webpack安装命令:
npm install -g webpack
- browserify安装命令:
npm install -g browserify
- 前端模块化的方案 browserify/webpack 和 seajs/requirejs 的区别:
1、seajs/requirejs : 是一种"在线编译" 模块的方案,相当于在页面上加载一个CMD/AMD解释器。这样浏览器就认识了define、exports、module这些东西。也就实现了模块化。
2、webpack/browserify : 是一个"预编译"模块的方案,相比于上面 ,这个方案更加智能。这里以webpack为例。首先,它是预编译的,不需要在浏览器中加载解释器。另外,你在本地直接写JS,不管是 AMD / CMD / ES6 风格的模块化,它都能认识,并且编译成浏览器认识的JS
7、关于package.json的配置
- 在package.json里面dependencies依赖包的版本号前面的符号有两种,一种是~,一种是^。
- 的意思是匹配最近的小版本,比如1.0.2将会匹配所有1.0.x版本,但不匹配1.1.0
- 的意思是匹配最近的大版本,比如1.0.2 将会匹配所有1.x.x, 但不包括2.x.x
二、基于Angular(V2)开发的前端开发
1、设置开发环境安装(安装命令行工具Angular CLI)
- 安装(全局安装)命令:
npm install -g @angular/cli
或
cnpm install -g @angular/cli
- 卸载命令
npm uninstall -g @angular/cli
npm cache clean
2、创建新项目
- 安装命令:
ng new project-name
- 包管理器设置命令:
ng set --global packageManager=yarn 或
ng set --global packageManager=cnpm
3、启动开发服务器
- 进入项目,并启动服务器命令:
cd project-name
ng serve --open
三、基于React开发的前端开发
1、设置开发环境安装(安装命令行工具create-react-app)
- 安装(全局安装)命令:
npm install -g create-react-app 或
cnpm install -g create-react-app
- 卸载命令
npm uninstall -g create-react-app
npm cache clean
2、创建新项目
- 创建命令:
create-react-app project-name
3、启动开发服务器
- 进入项目,并启动服务器命令:
cd project-name
npm start
四、基于Vue开发的前端开发
1、设置开发环境安装(安装命令行工具vue-cli)
- 安装(全局安装)命令:
npm install -g vue-cli 或
cnpm install -g vue-cli
- 卸载命令
npm uninstall -g vue-cli
npm cache clean
2、创建新项目(基于 webpack 模板)
- 创建命令:
vue init webpack my-project
3、启动开发服务器
- 进入项目命令:
cd my-project
- 安装依赖包命令:
npm install
- 启动服务器命令:
npm run dev
五、基于Electron的桌面app开发
Electron (原名 Atom-Shell)是 GitHub 开源的跨平台桌面应用开发框架,框架基于Node.js 和 Chromium进行开发的,该框架允许你使用JavaScript, HTML 和 CSS来开发桌面应用。基于Electron框架开发的有 Visual Studio Code 和 Atom 等著名开源编辑器项目。
开始使用
electron-quick-start 的官方使用方法:
# Clone this repository
git clone https://github.com/electron/electron-quick-start
# Go into the repository
cd electron-quick-start
# Install dependencies
npm install
# Run the app
npm start
笔者的使用方法
用 Visual Studio Code(VS Code) 打开 electron-quick-start文件夹
在VS Code中打开命令行工具,输入命令
npm install
安装依赖包配置launch.json
{
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "launch",
"name": "Electron Main",
"runtimeExecutable": "${workspaceRoot}/node_modules/.bin/electron",
"program": "${workspaceRoot}/main.js",
"protocol": "legacy"
}
]
}
- 配置完后即可通过VS Code启动调试
Electron的开发环境搭建完毕。此外,Github还有一个与Electron有些类似的开源项目nw.js ,微信小程序开发工具就是基于nw.js开发的。
六、基于Ract Native的移动app开发
1、设置开发环境安装(安装命令行工具create-react-native-app)
- 安装(全局安装)命令:
npm install -g create-react-native-app 或
cnpm install -g create-react-native-app
- 卸载命令
npm uninstall -g create-react-native-app
npm cache clean
2、创建新项目
- 创建命令:
create-react-native-app AwesomeProject
3、启动开发服务器
- 进入项目命令:
cd AwesomeProject
- 启动服务器命令:
npm start
启动后命令窗口会打印QR code和服务器的地址(在VS Code的命令行中看不到),在手机端下载Expo App,用该App扫描QR code或输入服务器端的地址,手机端会自动加载服务器端的资源,在服务器端改动代码后保存会自动加载到手机端
认识Web前端、Web后端、桌面app和移动app新开发模式 - 基于Node.js环境和VS Code工具的更多相关文章
- [转载]Web前端和后端之区分,以及面临的挑战
原文地址:Web前端和后端之区分,以及面临的挑战[转]作者:joyostyle 在我们实际的开发过程中,我们当前这样定位前端.后端开发人员. 1)前端开发人员:精通JS,能熟练应用JQuery,懂CS ...
- Web前端和后端之区分,以及…
原文地址:Web前端和后端之区分,以及面临的挑战[转]作者:joyostyle 在我们实际的开发过程中,我们当前这样定位前端.后端开发人员. 1)前端开发人员:精通JS,能熟练应用JQuery,懂CS ...
- [转载]Web前端和后端之区分,以及面临的挑战【转】
原文地址:Web前端和后端之区分,以及面临的挑战[转]作者:joyostyle 在我们实际的开发过程中,我们当前这样定位前端.后端开发人员. 1)前端开发人员:精通JS,能熟练应用JQuery,懂CS ...
- Web前端和后端开发的区别和要求
Web前端和后端开发的区别和要求 有时候自己会分不清,其实是因为前后端都了解,类似于全栈工程师,但又什么都不是很精通.那到底什么是前端.后端呢,我整理了一些企业要求级别的前端/后端基础,开发框架等. ...
- Fenix – 基于 Node.js 的桌面静态 Web 服务器
Fenix 是一个提供给开发人员使用的简单的桌面静态 Web 服务器,基于 Node.js 开发.您可以同时在上面运行任意数量的项目,特别适合前端开发人员使用. 您可以通过免费的 Node.js 控制 ...
- koa : Express出品的下一代基于Node.js的web框架
https://www.liaoxuefeng.com/wiki/001434446689867b27157e896e74d51a89c25cc8b43bdb3000/001434501579966a ...
- 基于 Node.js 平台,快速、开放、极简的 web 开发框架。
资料地址:http://www.expressjs.com.cn/ Express 基于 Node.js 平台,快速.开放.极简的 web 开发框架. $ npm install express -- ...
- Koa -- 基于 Node.js 平台的下一代 web 开发框架 koa.bootcss.com
Koa -- 基于 Node.js 平台的下一代 web 开发框架 koa.bootcss.com
- 创业笔记-Node.js入门之一个完整的基于Node.js的web应用
用例 我们来把目标设定得简单点,不过也要够实际才行: 用户可以通过浏览器使用我们的应用. 当用户请求http://domain/start时,可以看到一个欢迎页面,页面上有一个文件上传的表单. 用户可 ...
随机推荐
- Firewalld防火墙与ICMP攻击
原文地址:http://www.excelib.com/article/293/show 提到ICMP大家应该都很熟悉,可能有人会说:不就是ping吗?但是说到ICMP攻击以及相关防御措施可能就有的人 ...
- jq from表单 取值
//获取表单参数 var DataDeal = { formToJson: function (id) { var data=$(id).serialize();//获取值 data = decode ...
- 【原】C++11并行计算 — 数组求和
本文转载请注明出处 -- polobymulberry-博客园 0x00 - 前言 最近想优化ORB-SLAM2,准备使用并行计算来提高其中ORB特征提取的速度.之前对并行计算方面一窍不通.借此机会, ...
- java http头信息
JAVA 从http请求头中获取Header信息: request.getHeader(),request.getHeaderNames(),request.getHeaders() Java获取Ht ...
- Oracle profile含义、修改、新增
profiles文件是口令和资源限制的配置集合,包括CPU的时间.I/O的使用.空闲时间.连接时间.并发会话数量.密码策略等对于资源的使用profile可以做到控制会话级别或语句调用级别.oracle ...
- cx_Oracle.DatabaseError: ORA-12541: TNS:no listener
问题:利用Python连接Oracle时报错,完整过程如下 import cx_Oracle conn = cx_Oracle.connect('testma/dingjia@192.168.88.1 ...
- 前段基础之HTML
HTML 初识 web服务本质 import socket def main(): sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) s ...
- HTTPS安全超文本传输协议
一.什么是HTTPS 简单的理解HTTPS就是使用SSL/TLS加密内容的.安全的HTTP协议 HTTPS = HTTP + SSL/TLS 二.对称加密与非对称加密 对称加密:加密和解密使用同一密钥 ...
- 01——微信小程序官方demo讲解——文件结构
1.环境概览 首先环境配置的部分略过,打开小程序开发工具.选择一个空目录,即可开始一个demo项目. 其中新建成功后的目录如图所示: 2.文件结构描述 如图所示,左边是界面展示,右边是目录结构. 目录 ...
- ansible初识二
一.ansible模块(yum.pip.service.conr.user.group) 上篇中我们已经学了ansible 的几个模块, 接下来再来学习几个, 那么你是否知道ansible 一共有多少 ...