2013-07-11 25 views
1

使用this tutorial與煎茶觸摸2.2.1的錯誤,我不能編譯,因爲未定義$font-family變量的我的項目:

error application.scss (Line 2 of _Class.scss: Undefined variable: "$font-family".) 
Sass::SyntaxError on line ["2"] of 
/Users/mac/Sites/apps/MyApp/touch/resources/themes/stylesheets/sencha- 
touch/default/src/_Class.scss: Undefined variable: "$font-family". 

有沒有人有一個想法如何解決這個問題?

注意:這是以前版本中的bug(Sencha Touch 2.2)。

application.scss

1 $base-color: #7A1E08; 
    2 $base-gradient: 'glossy'; 
    3 
    4 @import 'sencha-touch/default/all'; 
    5 
    6 @include sencha-panel; 
    7 @include sencha-buttons; 
    8 @include sencha-sheet; 
    9 @include sencha-picker; 
10 @include sencha-toolbar-forms; 
11 @include sencha-tabs; 
12 @include sencha-toolbar; 
13 @include sencha-carousel; 
14 @include sencha-indexbar; 
15 @include sencha-list; 
16 @include sencha-layout; 
17 @include sencha-form; 
18 @include sencha-loading-spinner; 

注:我已經安裝了Ruby 1.9.3p448。

+1

你嘗試設置'$字體family'變量的東西(放在進口超前)? – cimmanon

+0

@cimmanon,我只是試過,但也不工作 – Pompeyo

回答

4

我發現如何解決這個問題。

看煎茶觸摸的Upgrading Themes From Sencha Touch 2.1 to 2.2住宿2.2.1文檔:

最重要的變化需要注意的是遠離使用 混入了每個組件的移動。

與那個說。他們改變了使用組件@import代替@include像這包括:

@import 'sencha-touch/default/src/Panel'; 

還注意到文檔使用@import 'sencha-touch/default/Panel';但正確的方式做例如它添加的src/_the_component_目錄@import 'sencha-touch/default/src/Panel';

我也沒有用config.rb和theme.scss創建一個新目錄。我剛剛修改了my_app/resources/sass/app.scss中已存在的app.scss文件。

然後在終端的sass目錄下,我使用了$ compass compile,最後工作。

這裏是我的代碼:

# apps.scss 
$base-color: #af2584; 

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


@import 'sencha-touch/default/src/Button'; 
@import 'sencha-touch/default/src/Panel'; 
@import 'sencha-touch/default/src/Sheet'; 
@import 'sencha-touch/default/src/MessageBox'; 
@import 'sencha-touch/default/src/Toolbar'; 
@import 'sencha-touch/default/src/carousel/Carousel'; 
0

我遇到了同樣的問題。解決方案是添加@import 'sencha-touch/default';

我也擺脫了煎茶特定所有的包括,因爲「一切」涵蓋其中,所以你會:

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