ngCkeditor и Ckeditor, развертывание ресурсов

#ruby-on-rails #deployment #capistrano #asset-pipeline #bower

#ruby-on-rails #развертывание #capistrano #ресурс-конвейер #беседка

Вопрос:

у меня есть приложение rails, которое пользователи используют для восстановления некоторых ресурсов, таких как angular, angular-plugins и ng-Ckeditor. Моя основная проблема заключается в вышеупомянутой ошибке, когда я пытаюсь развернуть свое приложение. Я не могу найти, что произошло, и я действительно думаю, что это может быть какой-то проблемой с ckeditor gem и ng-ckeditor из bower. Под сообщением об ошибке я вставлю свой файл production.rb, deploy, gemfile, чтобы сообщить мне, если вы видите что-то не так.

 ExecJS::ProgramError: Unexpected token: eof (undefined) (line: 11, col: 0, pos: 286)

Error

at new JS_Parse_Error (/tmp/execjs20140613-30493-1mkpf99js:2357:10754)
at js_error (/tmp/execjs20140613-30493-1mkpf99js:2357:10973)
at croak (/tmp/execjs20140613-30493-1mkpf99js:2357:19198)
at token_error (/tmp/execjs20140613-30493-1mkpf99js:2357:19335)
at unexpected (/tmp/execjs20140613-30493-1mkpf99js:2357:19423)
at block_ (/tmp/execjs20140613-30493-1mkpf99js:2357:24668)

at ctor.body (/tmp/execjs20140613-30493-1mkpf99js:2357:24322)
at function_ (/tmp/execjs20140613-30493-1mkpf99js:2357:24387)
at expr_atom (/tmp/execjs20140613-30493-1mkpf99js:2357:27439)

at maybe_unary (/tmp/execjs20140613-30493-1mkpf99js:2357:30108)
(in /home/******/site/shared/bundle/ruby/2.1.0/bundler/gems/ckeditor-84ef6a7e3ee8/app/assets/javascripts/ckeditor/override.js.erb)
  

Production.rb

 config.assets.precompile << Rails.root.join('vendor', 'assets', 'bower_components')
config.assets.precompile  = Ckeditor.assets
  

Deploy.rb

 before 'deploy:assets:precompile', 'deploy:assets:install'
namespace :deploy do
  namespace :assets do
    desc 'install asset dependencies'
      task :install do
      run "cd #{latest_release} amp;amp; bundle exec rake bower:clean"
      run "cd #{latest_release} amp;amp; bundle exec rake bower:update:prune['--config.interactive=false']"
      run "cd #{latest_release} amp;amp; rm vendor/assets/bower_components/ng-ckeditor/LICENSE"
      run "cd #{latest_release} amp;amp; mv vendor/assets/bower_components/ng-ckeditor/src/styles/ng-ckeditor.less vendor/assets/bower_components/ng-ckeditor/src/styles/ng-ckeditor.scss"
    end
  end
end
  

Application.js и admin/application.js

 //= require jquery
//= require jquery_ujs
//= require bootstrap
//= require jquery_nested_form
//= require ckeditor/override
//= require ckeditor/init
//= require underscore-min
//= require microplugin
//= require sifter.min
//= require selectize.min
//= require isotope.pkgd.min
//= require fit-columns
//= require jquery.screwdefaultbuttonsV2
//= require fancySelect
//= require flash
//= require notifications
//= require reviews
//= require raty
//= require how
//= require teachers
//= require init
//= require angular
//= require angular-resource
//= require angular-xeditable
//= require angular-sanitize
//= require angular-bootstrap
//= require ng-ckeditor
//= require app
//= require_tree ./angular
  

Импорт — это когда я удаляю из application.js ( администратор) ckeditor / переопределение развертывания завершено, но ckeditor из gem не воспроизводится в отличие от ng-ckeditor с продолжением воспроизведения

Я действительно считаю, что ng-ckeditor инициализирует свой собственный ckeditor.

Ответ №1:

Для всех, кому может понадобиться помощь в этом, я решил проблему,

config.assets.js_compressor = Uglifier.new(mangle: false)