Сборка Coffeescript с колбой в производстве

У меня есть приложение Flask, которое я запускаю в производство. Прямо сейчас у него есть большой уродливый JS-файл, который я хотел бы выложить и переписать в нечто вроде Coffeescript. Я рассматривал что-то вроде Flask-Cake, чтобы упростить компиляцию CoffeeScript. Однако я не знаю, как что-то подобное сработало бы для производства. Вероятно, у меня должен быть скрипт, который компилирует файлы coffeescript перед развертыванием, верно? Я никогда не работал в системе с этим конкретным макетом - некомпилированной на стороне сервера, но скомпилированной на стороне клиента. Какая стандартная процедура здесь?

2 ответа

Вы, вероятно, ищете Flask-Assets.

Пример с сайта:

from flask import Flask
from flask.ext.assets import Environment, Bundle

app = Flask(__name__)
assets = Environment(app)

js = Bundle('jquery.js', 'base.js', 'widgets.js',
            filters='jsmin', output='gen/packed.js')
assets.register('js_all', js)

Это будет автоматически объединять jquery.js, base.js а также widgets.js в вашем static папка, передать их через jsmin и сохранить результат в static/gen/packed.js,

Эта компиляция по умолчанию всегда происходит при изменении одного из исходных файлов. Наблюдение за файлами в процессе производства довольно дорого (а для этого на сервере должен быть установлен компилятор coffeescript!), Поэтому для отключения мониторинга есть значение конфигурации.

Другой плагин, который является более легким, но по моему опыту также менее мощным, является Flask-Makestatic.

Взгляните на DukPy!Это простой интерпретатор javascript для Python, который может компилировать CoffeeScript, TypeScript, BabelJSа также JSX. Использование очень простое:

      import dukpy

dukpy.coffee_compile("CoffeeScript goes here!")

DukPy является преемником пакета Python-CoffeeScript , который больше не поддерживается.

Другие вопросы по тегам