SassAndCoffee компилирует CoffeeScript с опцией 'bare'.Могу ли я контролировать это? - PullRequest
2 голосов
/ 22 октября 2011

Если я устанавливаю пакет SassAndCoffee.Core из NuGet, а затем запрашиваю SassAndCoffee для компиляции некоторого CoffeeScript, кажется, что он передает опцию «bare» компилятору CoffeeScript - т. Е. Он не оборачивает мой скрипт в обычный CoffeeScript (function() { и }).call(this); форзацы.

Есть ли способ заставить SassAndCoffee не использовать опцию "голый"?

Примечание: это в настольном приложении, и я явно обращаюсь к коду SassAndCoffee - это не волшебное переписывание, которое происходит на сайте ASP.NET.

Подробнее: вот мой код для компиляции CoffeeScript с использованием SassAndCoffee.

var sassCompiler = new CoffeeScriptCompiler();
var js = sassCompiler.Compile("alert 'Hello World'");

, что приводит к следующему (пустому) выводу в переменной js:

alert('Hello World');

Но если я напишу какой-нибудь простой JavaScript, который вызывает официальный компилятор CoffeeScript с параметрами по умолчанию, например, этот HTML-файл (поместите coffee-script.js в тот же каталог):

<code><script src="coffee-script.js"></script>
<script>
document.write("<pre>")
document.write(CoffeeScript.compile("alert 'Hello World'"))
document.write("
")

Я получаю ожидаемый упакованный вывод JavaScript:

(function() {
  alert('Hello World');
}).call(this);

Похоже, SassAndCoffee звонит CoffeeScript.compile(input, {bare: true}) вместо CoffeeScript.compile(input).

Я бы хотел использовать SassAndCoffee.Core для его поддержки V8, но я хочу иметь возможность выбирать между выводом по умолчанию и выводом без вывода. Если не считать переписывания компилятора CoffeeScript от SassAndCoffee (который как бы лишает смысла использование SassAndCoffee) или добавления и добавления кода оболочки вручную (я чувствую себя грязно, дублируя работу, которую должен делать компилятор), есть ли способ, которым я могу получить SassAndCoffee для вывода не голого JavaScript?

1 Ответ

1 голос
/ 11 декабря 2011

Если я правильно читаю, разработчики считают, что это явное решение:

https://github.com/xpaulbettsx/SassAndCoffee/blob/43300b7805db8b3dccf20cc71d1282ecfd8c76e1/SassAndCoffee.Core/CoffeeScript/coffee-script.js

Это также может предоставить вам файл, который необходимо изменить, чтобы изменить его в соответствии с вашими потребностями.

В качестве альтернативы, в случае, если вы застряли, я использую Mindscape Web Workbench в качестве плагина Visual Studio, который, кажется, выполняет большую часть того, что, как кажется, SassAndCoffee выполняет для вас.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...