1

本教程$font-family与 Sencha Touch 2.2.1 一起使用,由于未定义的变量,我无法编译我的项目:

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".

有谁知道如何解决这个问题?

注意:这是之前版本(Sencha Touch 2.2)中的一个错误

应用程序.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。

4

2 回答 2

4

我找到了解决这个问题的方法。

查看从 Sencha Touch 2.1 到 2.2 升级主题的 sencha-touch 2.2.1 文档停留:

需要注意的最重要的变化是不再为每个组件使用 mixin。

这么说。他们改变了使用 @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';
于 2013-07-17T11:20:16.920 回答
0

我遇到了同样的问题。解决方案是添加@import 'sencha-touch/default';.

我还删除了所有特定于煎茶的包含,因为“全部”涵盖了它们,所以您将拥有:

@import 'sencha-touch/default';
@import 'sencha-touch/default/all';
于 2013-07-17T05:18:43.577 回答