Тематическая ошибка sencha touch: файл для импорта не найден или не читается: sencha-tou ch / default / all - PullRequest
3 голосов
/ 24 ноября 2011

Я просто не могу найти обходной путь для этого, пожалуйста, помогите

мой config.rb в каталоге $ PROJECT_HOME / assets / www / theming

 dir = File.dirname('..Path_to_project_home..\assets\www\theming\config.rb')


load File.join(dir, '..', 'lib', 'touch', 'resources', 'themes')


sass_path    = dir
css_path     = dir
environment  = :production
output_style = :compressed

это мой app.scss:

@import 'sencha-touch/default/all';

@include sencha-panel;
@include sencha-buttons;
@include sencha-toolbar;
@include sencha-list;
@include sencha-layout;
@include sencha-sheet;
@include sencha-msgbox;

в консоли в каталоге 'sass_path', которую я запускаю

compass compile app.scss

, но я получаю следующую ошибку:

File to import not found or unreadable: sencha-touch/default/all.

Пожалуйста, помогите,не могу решить это.

Ответы [ 8 ]

3 голосов
/ 19 декабря 2013

Вам не нужно ничего здесь копировать, ключ находится в файле config.rb.Вы увидите строку вроде:

load File.join(dir, '..', '..', 'touch', 'resources', 'themes')

Это говорит компасу, откуда загружать файлы sass Sencha Touch.Он переводится как:

../../touch/resources/themes

Так что, если вы предполагаете использовать cd для перемещения каталогов в каталог тем ST, вам нужно изменить строку File.join.Например, если ваша структура каталогов была следующей:

/ stuff / resources / sass config.rb / vendor /sencha-touch.2.2.1 / resources / themes

Вам потребуется строканапример:

load File.join(dir, '..', '..', '../', 'vendor', 'sencha-touch.2.2.1', 'resources', 'themes')

Если сомневаетесь, просто перейдите в каталог с вашим config.rb и создайте компакт-диск, который приведет вас к

2 голосов
/ 30 ноября 2011

Я не знаю, почему это нигде не упоминается, может быть, потому что это прямо вперед. Я скопировал

<sencha-root>/resources/themes Folder 

в мой проект:

<project-root>/lib/touch/resources/themes

как указано в команде .join в этой строке

load File.join(dir, '..', 'lib', 'touch', 'resources', 'themes')

после запуска

compass compile yourApp.scss 

снова в каталоге тем проекта, теперь он должен работать.

1 голос
/ 11 января 2014

попробуйте изменить config.rb

эта строка:

load File.join(dir, '..', '..', '../..', 'resources', 'themes')

до:

load File.join(dir, '..', '..', '..', 'resources', 'themes')

или: посчитайте точку, чтобы достичь уровня пути вашего приложения.

1 голос
/ 09 октября 2012

Я не мог найти какую-либо помощь онлайн, поэтому я сделал это

@import '../../../sdk/resources/themes/stylesheets/sencha-touch/default/all';

Полностью прибил это для меня.

1 голос
/ 28 февраля 2012

Просто чтобы уточнить правильный ответ Дана, вам, возможно, придется создать папки lib с touch в нем и ресурсами внутри touch в папке , а затем скопируйте папку themes из папки / resources / themes в папку resources .

0 голосов
/ 02 августа 2014

У меня была странная версия этой же проблемы: она возникала только тогда, когда я сохранял файл app.scss в режиме SCSS в Emacs! Я вернулся в основной режим и сохранил его, и он работает нормально. Не спрашивай меня почему.

0 голосов
/ 24 августа 2013

У меня была такая же проблема после обновления Sencha SDK с 2.1.1 до 2.2.2

Проблема для меня заключалась в том, что при создании рабочего пространства по умолчанию для проектов Sencha не копирует все необходимые файлыв папку

<workspace-name>/touch/resources/themes

.

Поэтому я скопировал Дану

 /touch-2.2.1/resources/themes

в папку

touch/resources

рабочей области,и так у меня все работало нормально.

0 голосов
/ 22 августа 2013

На всякий случай, если кто-нибудь ударит по этому ... Я столкнулся с этой проблемой после преобразования существующего не-Cmd-приложения для запуска под Cmd. В конце концов я понял, что у меня уже есть compass watch в окне терминала для существующего приложения, и поэтому изменения в config.rb для добавления сенсорного пути не были отражены. После того, как я просто перезапустил компас и обновил файл sass, все заработало.

...