jspm
1、简介
- JavaScript 模块的写法有几种,比如 AMD,CommonJS .. 还有标准化的 ES6 的写法 .. jspm 支持加载所有的用这些方法写的 JavaScript 模块
- 在你的应用里,现在就可以使用 ES6 提供的标准写法 .. 至于怎么去载入模块可以交给 jspm 去处理 .. 也就是你只需要了解 ES6 的模块写法 ..
- jspm 还是一个为浏览器上用的东西准备的一个包管理 .. 比如它可以让你去从不同的源去安装不同的包 .. 默认的源有 npm ,还有 github .. 安装好你需要的包以后,在你的代码里,只需要一行代码,就可以使用这些包提供的功能 .. 不用担心其它的事情 . .
- 在开发的时候,jspm 可以使用 Traceur 或者 Babel ,实时的在浏览器上编译 JavaScript ,把 es6 的代码编译成 es5 的代码 ..
- 在正式发布应用的时候,可以优化创建的模块,把模块依赖的东西打成一个包
2、安装jspm
npm install jspm -g 在全局范围安装jspm,就可以在任何地方使用jspm命令了
jspm // 完成后输入jspm,会返回一些帮组信息
cd ~/desktop
mkdir reactProject // 创建项目文件夹
cd reactProject
npm init // 创建package.json,一路回车即可
ls // 查看文件夹,就会一个package.json文件
npm install jspm --save-dev // 把 jspm添加到项目开发依赖
ls // node_modules package.json两个文件
jspm init // 为jspm创建配置文件config.js, 一系列问题,可一路回车
ls // 会发现有config.js , jspm_packages(jspm安装的一些包) node_modules package.json
3、安装包 jspm install
jspm install jquery=github:components/jquery
jspm uninstall jquery
4、使用ES6模块, BrowserSync 使用
1. npm install -g browser-sync // 安装Node后,通过npm安装BrowserSync(自动刷新)
2. 使用BrowserSync: browser-sync start --server 开启服务
browser-sync start --server --no-notify --files 'index.html, app/**/*.js'
5、打包bundle 功能
- 打开浏览器的开发者工具 .. 再打开 network 这个选项卡 .. 在这里你会看到被下载的一些东西 .. 这里有挺多 js 文件 .. main.js .. fruit.js ,jquery.js 等等 ..
- jspm 支持 bundle,也就是打包的功能,就是把一些资源打包成一个东西 .. 比如下面我们去把 main.js 这个模块打包成一个东西 ..
打包用的是 jspm bundle 命令
进入项目目录
jspm bundle app/main app/build.js // 将app文件夹下的main.js里面的js都打包到build.js中
完成以后,会在 app 目录下面创建一个叫 build.js 的文件 .. 回到编辑器 .. 用一个 script 标签 .. 把 app 下的 build.js 嵌入进来 .. 保存 ..
再回到浏览器 .. 在 network 这个选项卡里,会少了很多 js 文件,因为我们把它们打成了一个包 .. 就是这个 build.js ..- 没有打包
打包
build.png
js_bundle.png
jspm的更多相关文章
- jspm 是浏览器包管理工具
jspm 是浏览器包管理工具. jspm 是 SystemJS 通用模块加载器的包管理器,基于动态 ES6 模块加载器 直接从任意的 registry(比如 npm 或者 GitHub)加载任意模块格 ...
- [Javascript] An Introduction to JSPM (JavaScript Package Manager)
JSPM can handle installed packages, transpiling ES6, and bundling all from the command-line. This vi ...
- jspm 简介
借鉴:http://www.jianshu.com/p/4aba847b3e8c 功能 1. 支持加载JavaScript各种模块化的写法:AMD.CommonJS.标准化的ES6模块... 2. 包 ...
- jspm 安装试用
1. 安装 yarn global add jspm or npm install -g jspm 2. 创建项目使用 mkdir appdmeo jspm init 3. 安装依赖 jspm ins ...
- 作为前端er,写在年末的一些话
写惯了技术类的文章,这种总结和唠嗑型的我基本也就在年末才来一篇.说实话,这种轻松类的文章往往比技术类的要受欢迎的多,因为其受众更广,看起来也不烧脑. 说来愧疚,这一年其实产出有点低,大致就写了不到二十 ...
- JavaScript资源大全中文版(Awesome最新版)
Awesome系列的JavaScript资源整理.awesome-javascript是sorrycc发起维护的 JS 资源列表,内容包括:包管理器.加载器.测试框架.运行器.QA.MVC框架和库.模 ...
- ES6环境搭建及react-router学习
一.起因 ES6新纳入了很多振奋人心的新特性,真的很让人忍不住去尝试一下.不过,由于现在大部分的浏览器对ES6的支持程度都不是很好.所以如果想要放心地使用一些新特性,还需要用一些工具,将ES6或者ES ...
- VS2015插件
这里记录一下,VS2015使用的插件和具体用法链接 Refactoring Essentils:代码重构分析 http://vsrefactoringessentials.com/ 可以使用 取消 R ...
- JS 模块化和打包方案收集
1.这里想讨论的是拆分规则,不是在问哪个工具怎么使用.2.这里没有在想找正确答案,因为感觉这个问题要结合具体业务场景. 随着项目开发越来越大,一开始代码全打包到一个文件的方式,让文件越来越大,接下来要 ...
随机推荐
- outlook 设置分类收邮件
打开outlook,工具---->“规则和通知”.建相应的规则即可.
- Socke---转
Socket,又称为套接字,Socket是计算机网络通信的基本的技术之一.如今大多数基于网络的软件,如浏览器,即时通讯工具甚至是P2P下载都是基于Socket实现的.本文会介绍一下基于TCP/IP ...
- 《Effective MySQL之SQL语句最优化》读书笔记——乱七八糟系列(给自己看)
该书区别于诸如<MySQL技术内幕——InnoDB存储引擎>等书的一大特色是该书主要讲的是MySQL数据库中的索引技术,并分别讲了InnoDB.MyISAM.Memory三个存储引擎.其中 ...
- jpa,jdbc,hibernate/mybatis,数据库驱动
JPA是规范,hibernate/mybatis是对规范的实现,hibernate/mybatis是对jdbc的封装,也就是说hibernate/mybatis还是会调用jdbc. 我们平时使用 ...
- 容器排序之sort,stable_sort
bool isShorter(const string &s1, const string &sz){ return s1.size() < sz.size(); } int m ...
- 如何在IAR中配置CRC参数(转)
源:如何在IAR中配置CRC参数 前言 STM32全系列产品都具有CRC外设,对CRC的计算提供硬件支持,为应用程序节省了代码空间.CRC校验值可以用于数据传输中的数据正确性的验证,也可用于数据存储时 ...
- HTTP协议—常见的HTTP响应状态码解析
常见的HTTP响应状态码解析 1XX Informational(信息性状态码) 2XX Success(成功状态码) 3XX Redirection(重定向状态码) 4XX Client Error ...
- 一句white-space:nowrap解决IE6,IE7下浮动元素不自动换行
一句white-space:nowrap解决IE6,IE7下浮动元素不自动换行
- 超酷Loading进度条
在线演示 本地下载
- awk遇到windows 的^M
windows在编辑的文档,在linux中显示会在行尾出现一个^M window下编辑的文档:末尾带^M$ linux下编辑的文档:末尾带$ awk中如果存在^M,则会限制print的输出列数(只能输 ...