Есть ли SASS.js?Что-то вроде LESS.js? - PullRequest
110 голосов
/ 14 декабря 2010

Я использовал LESS.js раньше. Это просто в использовании, что-то вроде

<link rel="stylesheet/less" href="main.less" type="text/css">
<script src="less.js" type="text/javascript"></script>

Я видел SASS.js . Как я могу использовать его подобным образом? Разбор файла SASS для немедленного использования в HTML. Похоже, что SASS.js больше подходит для Node.js ?

var sass = require('sass')
sass.render('... string of sass ...')
// => '... string of css ...'

sass.collect('... string of sass ...')
// => { selectors: [...], variables: { ... }, mixins: { ... }}

Ответы [ 7 ]

42 голосов
/ 21 декабря 2010

Официально запрещенной реализации JavaScript в sass или scss не существует. Я видел несколько реализаций реализации, но я не могу рекомендовать использовать их в настоящее время.

Однако, пожалуйста, несколько пунктов:

  1. Зачем вам заставлять всех пользователей составлять таблицы стилей, если вы можете сделать это один раз для всех них.
  2. Как бы выглядел ваш сайт, если JavaScript отключен.
  3. Если вы решите перейти на реализацию на стороне сервера в будущем, все ваши шаблоны должны быть изменены соответствующим образом.

Итак, для начала нужно немного больше настройки, но мы (команда sass core) считаем, что компиляция на стороне сервера - лучший долгосрочный подход. Аналогичным образом, разработчики предпочитают компиляцию на стороне сервера для рабочих таблиц стилей.

28 голосов
/ 22 января 2014

Поскольку visionmeda / sass.js больше не доступен и scss-js не обновлялся в течение 2 лет, я могу заинтересовать вас sass.js .Это библиотека C ++ libsass (также используемая node-sass ), скомпилированная в JavaScript с использованием Emscripten.Реализацию для компиляции таблиц стилей scss, связанных или встроенных в html, можно найти по адресу sass.link.js .

Попробуйте sass.js с помощью интерактивной игровой площадки

6 голосов
/ 01 декабря 2015

ДА

Как мы и ожидали, после переписывания на C ++ его можно скомпилировать в Javascript через Emscripten .

Это версия браузера: https://github.com/medialize/sass.js/

Как они рекомендуют, для узла вы можете использовать это: https://github.com/sass/node-sass

6 голосов
/ 19 августа 2015

Я только что обнаружил интересную площадку Sass.js.Несколько вещей, возможно, изменились за эти годы.Проверьте это:

http://medialize.github.io/playground.sass.js/

5 голосов
/ 02 января 2011

Вам определенно не следует заставлять всех ваших пользователей компилировать таблицы стилей, однако реализация javascript также может выполняться на сервере. Я также ищу реализацию savascript для использования в приложении node.js. Это что-то, что рассматривает команда sass?

3 голосов
/ 24 февраля 2011

Предпринята попытка GitHub , scss-js . Тем не менее, он не завершен и не имел никаких коммитов в течение пяти месяцев.

1 голос
/ 10 августа 2016

Почему LibSass

Хотя официально не реализована реализация sass в JavaScript, существует официальный порт C / C ++ механизма Sass, известный как LibSass . Поскольку LibSass является официальной реализацией, лучше всего выбрать библиотеку JavaScript, которая использует LibSass под капотом.


На сервере

Для JavaScript, работающего в среде Node.js, есть Node-sass .

Под капотом Node-sass используется сам LibSass.


в браузере

Для JavaScript, работающего в браузере, есть Sass.js .

Под капотом Sass.js используется версия LibSass (v3.3.6 на момент написания этой статьи), которая была конвертирована в JavaScript с помощью Emscripten .

...