jss

编程之家收集整理的这个编程导航主要介绍了jss编程之家,现在分享给大家,也给大家做个参考。

jss 介绍

jsS 是一种比 css 更强大的抽象,它使用 JavaScript 以声明和可维护的方式描述样式。它是一个高性能的 js to css 编译器,可在运行时和服务器端运行。它是低级别并且与框架无关的,大约有 6KB 大小,并且可以通过插件 API 进行扩展。 

使用场景

构建 JavaScript 很重的应用

使用基于组件的架构

构建可重用的 UI 库

需要一个无冲突的 css (外部内容、第三方 UI 组件等)

需要在 js 和 css 之间共享代码

下载量小很重要

健壮性和代码重用很重要

易于维护很重要

Demo

import jss from 'jss'

import preset from 'jss-preset-default'

import color from 'color'

// One time setup with default plugins and settings.

jss.setup(preset())

const styles = {

button: {

fontSize: 12,

'&:hover': {

background: 'blue'

}

},

ctaButton: {

extend: 'button',

'&:hover': {

background: color('blue')

.darken(0.3)

.hex()

}

},

'@media (min-width: 1024px)': {

button: {

width: 200

}

}

}

const {classes} = jss.createStyleSheet(styles).attach()

document.body.innerhtml = `

<button class="${classes.button}">Button</button>

<button>CTA Button</button>

`

生成结果

<head>

<style>

.button-123456 {

font-size: 12px;

}

.button-123456:hover {

background: blue;

}

.ctaButton-789012 {

font-size: 12px;

}

.ctaButton-789012:hover {

background: red;

}

@media (min-width: 1024px) {

.button-123456 {

min-width: 200px;

}

}

</style>

</head>

<body>

<button class="button-123456">Button</button>

<button class="ctaButton-789012">CTA Button</button>

</body>

网站地址:https://cssinjs.org

GitHub:https://github.com/cssinjs/jss

网站描述:一个高性能的 JS to CSS 编译器

jss

官方网站:https://cssinjs.org

小编说

以上是编程之家为你收集整理的jss全部内容。

如果觉得编程之家网站内容还不错,欢迎将编程之家推荐给好友。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


jade,Jade 是一个高性能的模板引擎,以 JavaScript 的形式集成在 node 和浏览器中
curl.js,轻量级,快速,可扩展的模块加载
jspm-cli,基于SystemJS的Js包管理器
angular-cli,快速构建Angular2项目
lerna,一款多项目多模块的管理工具
duo.js,前端的下一代包管理器。
WebJars,将web前端资源(如jQuery &amp; Bootstrap)打成jar包文件
swc,用rust编写的网络编译器,babel的替代品
fetch,ajax请求的新写法
babel-plugin-preval,在构建期预先评估代码
Lebab,用于将你的ES5代码转成ES6/ES7
browserify,一个浏览器端代码模块化工具,require和module.exports来导入和导出.Browserify的原理:部署时处理代码依赖,将模块打包为一个文件。
esprima,高性能,符合标准的ECMAScript 解析器
bundle-buddy,识别bundle重复的工具
FIS3,为你定制的前端工程构建工具
prerender-loader,Webpack通用预渲染
Parcel,快速,零配置的 Web 应用程序打包器
Neutrino,创建和构建零初始配置的现代JavaScript应用程序
lit-html,js中写 HTML 的模板引擎
walle,瓦力 Devops开源项目代码部署平台