sublime +react+es6开发环境
Sublime3才有的插件,支持ES6、JSX语法高亮。
菜单->View->Syntax->Open all with current extension as...->Babel->JavaScript(Babel) 高亮了有木有。
Babel-Sublime插件很好的支持了JSX语法的高亮显示,连包裹在组件中的HTML标签都能实现高亮显示,具体的插件安装以及设置方法就不多说了,自行看GitHub上的介绍吧,很简单。
//支持的代码片段如下
cdm→ componentDidMount: fn() { ... }
cdup→ componentDidUpdate: fn(pp, ps) { ... }
cs→ var cx = React.addons.classSet;
cwm→ componentWillMount: fn() { ... }
cwr→ componentWillReceiveProps: fn(np) { ... }
cwu→ componentWillUpdate: fn(np, ns) { ... }
cwun→ componentWillUnmount: fn() { ... }
cx→ cx({ ... })
fdn→ React.findDOMNode(...)
fup→ forceUpdate(...)
gdp→ getDefaultProps: fn() { return {...} }
gis→ getInitialState: fn() { return {...} }
ism→ isMounted()
props→ this.props.
pt→ propTypes { ... }
rcc→ component skeleton
refs→ this.refs.
ren→ render: fn() { return ... }
scu→ shouldComponentUpdate: fn(np, ns) { ... }
sst→ this.setState({ ... })
state→ this.state.
刚开始在JSX文件格式化后惨不忍睹,其实配置一个属性就可以支持JSX语法格式化。
菜单->Preferences->Package Settings->JsFormat->Settings-User加入以下代码
{
"e4x": true,//支持jsx格式化
"format_on_save": true//保存立即格式化,看个人喜好
}
Emmet
这个html标签自动补全的神插件相信很多人都用上了,非常便捷,现在可以通过配置实现JSX的html内容自动补全。
菜单->Preferences->Key Bindings - User加上以下代码(keys就是触发自动补全的按键,可自定义)
[{
"keys": [
"tab"
],
"args": {
"action": "expand_abbreviation"
},
"command": "run_emmet_action",
"context": [{
"key": "emmet_action_enabled.expand_abbreviation"
}]
}, {
"keys": ["tab"],
"command": "expand_abbreviation_by_tab",
"context": [{
"operand": "source.js",
"operator": "equal",
"match_all": true,
"key": "selector"
}, {
"key": "preceding_text",
"operator": "regex_contains",
"operand": "(\\b(a\\b|div|span|p\\b|button)(\\.\\w*|>\\w*)?([^}]*?}$)?)",
"match_all": true
}, {
"key": "selection_empty",
"operator": "equal",
"operand": true,
"match_all": true
}]
}]
1.首先安装SublimeLinter、SublimeLinter-jshint、SublimeLinter-jsxhint、SublimeLinter-contrib-eslint插件。
2.然后命令行全局安装
npm install -g eslint
npm install -g babel-eslint
npm install -g eslint-plugin-react
npm install -g jsxhint
3.以ES6语法检查为例,在项目工程根目录新建.eslintrc,输入
{
"parserOptions": {
"ecmaVersion": 6,
"sourceType": "module",
"ecmaFeatures": {
"jsx": true
}
},
"rules": {
"semi": ["error", "always"]
}
}
详细配置参考 http://eslint.org/docs/user-guide/configuring
4.打开Sublime3,菜单->Tools->SublimeLinter->Toggle Linter...就可以打开js、jsx、es6检查规则。注意:当使用es6开发时务必把jshint关掉,否则报一堆警告错误。
最新文章
- mybatis: 利用多数据源实现分库存储
- [Spring] Spring配置文件中特殊字符的规定
- iOS- 制作U盘安装Mac OS X 系统
- Beta版本测试报告
- 连接到kali linux服务器上的MySQL服务器错误
- 通过Percona XtraBackup添加一个slave
- Declare Cusror of SQLServer
- 针对android方法数64k的限制,square做出的努力。精简protobuf
- 网络---中断套接字Socket
- Easyui几种布局方式的使用
- Log4net 自定义字段到数据库(二)
- pipe----管道
- 前端知识之HTML内容
- Pandas系列(十四)- 实战案例
- Confluence 6 PostgreSQL 测试你的数据库连接
- SpringCloud(二)Eureka集群与Feign
- datatable的点击事件
- 自研后端HTTP请求参数验证器服务ParamertValidateService
- Odoo访问权限(一)
- es 5.0的下载安装for mac
热门文章
- MVC 页面间的传值
- NSURLSession学习笔记(二)Session Task
- servlet运作机制
- spring整合xfire出现Document root element ";beans";, must match DOCTYPE root ";null";错误解决方案
- vim删除空行和注释
- RK3288 USB UVC camera 摄像头 VIDIOC_DQBUF Failed!!! err[I/O error]
- 从汇编的角度看待变量类型与sizeof的机制
- 在vue中无论使用router-link 还是 @click事件,发现都没法从列表页点击跳转到内容页去
- pycaffe + anaconda2 + python2.7.配置
- TCP之二:TCP的三次握手与四次分手