Sencha Touch 2.3-Sass @mixin破坏了sencha应用程序的构建 [英] Sencha Touch 2.3 - Sass @mixin Breaks sencha app build

查看:100
本文介绍了Sencha Touch 2.3-Sass @mixin破坏了sencha应用程序的构建的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

只需升级到Sencha Touch 2.3,一切都很棒,直到我添加了Sass mixins,并尝试了 sencha应用程序构建 ...



update /注意: sencha app watch也会导致相同的错误。



(Sencha CMD 4.0.1.45)



我的mixin:

  @mixin MQ($ canvas){
@if $ canvas ==小{
@仅媒体屏幕,(最大宽度:20em){@content; } // 320px
}
@else如果$ canvas ==‘XS'{
@media only screen and(max-width:30em){@content; } // 480px
}
@else如果$ canvas == S {
@media only screen and(max-width:37.5em){@content; } // 600px
}
@else如果$ canvas == medium {
@media only screen and(max-width:48em){@content; } // 768px
}
@else,如果$ canvas ==更大{
@仅媒体屏幕和(最小宽度:769px){@content; } // 1024px
}
@else如果$ canvas == XL {
@media only screen and(min-width:75em){@content; } // 1200px
}
}

示例用法:

  #Login {

背景:#2f7790;

#spacer {

@include MQ(small){
margin-top:42%;
}
}
}

(我删除了这一个,它将找到下一个并抛出相同的错误)
然后当我尝试运行 sencha app build时:

  [INF] -compass-compile-sass-dir:
[INF]使用系统安装的ruby运行时
在/的第[ 14]行中执行Sass :: SyntaxError Users / jakeF / dev / SENCHA / MyApp / resources / sass / partials / _login.scss: ... lude MQ(small)之后的CSS无效:预期}为 {
/ Users / jakeF / dev / SENCHA / MyApp / resources / sass / partials / X__default-theme.scss:6
/Users/jakeF/dev/SENCHA/MyApp/resources/sass/app.scss:8
/用户/jakeF/bin/Sencha/Cmd/4.0.1.45/extensions/sencha-compass/gems/gems/sass-3.1.7/lib/sass/scss/parser.rb:896:in'expected'
/Users/jakeF/bin/Sencha/Cmd/4.0.1.45/extensions/sencha-compass/gems/gems/sass-3.1.7/lib/sass/scss/parser.rb:841:位于预期 $ b $中b /用户/jakeF/bin/Sencha/Cmd/4.0.1.45/extensions/sencha-compass/gems/gems/sass-3.1.7/lib/sass/ scss / parser.rb:836:在'tok!'中
/Users/jakeF/bin/Sencha/Cmd/4.0.1.45/extensions/sencha-compass/gems/gems/sass-3.1.7/lib/ sass / scss / parser.rb:362:在'block'
/Users/jakeF/bin/Sencha/Cmd/4.0.1.45/extensions/sencha-compass/gems/gems/sass-3.1.7/lib中/sass/scss/parser.rb:355:在`ruleset'
中/Users/jakeF/bin/Sencha/Cmd/4.0.1.45/extensions/sencha-compass/gems/gems/sass-3.1.7/ lib / sass / scss / parser.rb:417​​:in`declaration_or_ruleset中的块'

...


/ Users / jakeF / bin / Sencha / Cmd / 4.0.1.45 / extensions / sencha-compass / gems / bin / compass:23:在`load'
/Users/jakeF/bin/Sencha/Cmd/4.0.1.45/extensions/sencha-compass/gems中/ bin / compass:23:in'< main>'
错误app.scss(partials / _login.scss的第14行: ... lude MQ(small)之后的CSS无效:期望的} ,为 {)
[ERR]
[ERR]失败
[ERR] com.sencha.exceptions.ExProcess:罗盘进程退出,代码非零:1
[ERR]
[ERR]总时间:21秒
[ERR] Th执行此行时发生以下错误:
/Users/jakeF/dev/SENCHA/MyApp/.sencha/app/build-impl.xml:273:执行此行时发生以下错误:
/Users/jakeF/dev/SENCHA/MyApp/.sencha/app/sass-impl.xml:200:执行此行时发生以下错误:
/Users/jakeF/dev/SENCHA/MyApp/.sencha /app/sass-impl.xml:206:com.sencha.exceptions.ExProcess:罗盘进程退出,并返回非零代码:1

我的系统指南针编译正常。



我的系统ruby-

  ruby​​ 2.1.1p76(2014-02-24修订版45161)[x86_64-darwin13.0] 


解决方案

我在Sencha论坛上得到了以下答复:
您可以在YouApp / .sencha / app / default.properties

因此我在上述文件中添加了以下行:

  build.ruby.path = / Users / jakef / .rvm / rubies / ruby​​-2.1.1 / bin / ruby​​ 

它起作用了!


Just upgraded to Sencha Touch 2.3 - everything is great until I added my Sass mixins, and tried "sencha app build"...

update / note: "sencha app watch" also causes the same error.

(Sencha CMD 4.0.1.45)

My mixin:

@mixin MQ($canvas) {
  @if $canvas == small {
    @media only screen and (max-width: 20em) { @content; } //320px
  }
  @else if $canvas == 'XS' {
    @media only screen and (max-width: 30em) { @content; } //480px
  }
  @else if $canvas == S {
    @media only screen and (max-width: 37.5em) { @content; } //600px
  }
  @else if $canvas == medium {
    @media only screen and (max-width: 48em) { @content; } //768px
  }
  @else if $canvas == larger {
    @media only screen and (min-width: 769px) { @content; } //1024px
  }
  @else if $canvas == XL {
    @media only screen and (min-width: 75em) { @content; } //1200px
  }
}

Example usage:

#Login{

  background: #2f7790;

  #spacer{

    @include MQ(small) {
      margin-top: 42%;
    }
  }
}

(doesn't matter if I delete this one, it will find the next one and throw the same error) Then when I try to run "sencha app build":

[INF] -compass-compile-sass-dir:
[INF] executing compass using system installed ruby runtime
Sass::SyntaxError on line ["14"] of /Users/jakeF/dev/SENCHA/MyApp/resources/sass/partials/_login.scss: Invalid CSS after "...lude MQ(small) ": expected "}", was "{"
/Users/jakeF/dev/SENCHA/MyApp/resources/sass/partials/X__default-theme.scss:6
/Users/jakeF/dev/SENCHA/MyApp/resources/sass/app.scss:8
/Users/jakeF/bin/Sencha/Cmd/4.0.1.45/extensions/sencha-compass/gems/gems/sass-3.1.7/lib/sass/scss/parser.rb:896:in `expected'
  /Users/jakeF/bin/Sencha/Cmd/4.0.1.45/extensions/sencha-compass/gems/gems/sass-3.1.7/lib/sass/scss/parser.rb:841:in `expected'
/Users/jakeF/bin/Sencha/Cmd/4.0.1.45/extensions/sencha-compass/gems/gems/sass-3.1.7/lib/sass/scss/parser.rb:836:in `tok!'
  /Users/jakeF/bin/Sencha/Cmd/4.0.1.45/extensions/sencha-compass/gems/gems/sass-3.1.7/lib/sass/scss/parser.rb:362:in `block'
/Users/jakeF/bin/Sencha/Cmd/4.0.1.45/extensions/sencha-compass/gems/gems/sass-3.1.7/lib/sass/scss/parser.rb:355:in `ruleset'
  /Users/jakeF/bin/Sencha/Cmd/4.0.1.45/extensions/sencha-compass/gems/gems/sass-3.1.7/lib/sass/scss/parser.rb:417:in `block in declaration_or_ruleset'

...


 /Users/jakeF/bin/Sencha/Cmd/4.0.1.45/extensions/sencha-compass/gems/bin/compass:23:in `load'
  /Users/jakeF/bin/Sencha/Cmd/4.0.1.45/extensions/sencha-compass/gems/bin/compass:23:in `<main>'
error app.scss (Line 14 of partials/_login.scss: Invalid CSS after "...lude MQ(small) ": expected "}", was "{")
[ERR]
[ERR] BUILD FAILED
[ERR] com.sencha.exceptions.ExProcess: compass process exited with non-zero code : 1
[ERR]
[ERR] Total time: 21 seconds
                     [ERR] The following error occurred while executing this line:
/Users/jakeF/dev/SENCHA/MyApp/.sencha/app/build-impl.xml:273: The following error occurred while executing this line:
/Users/jakeF/dev/SENCHA/MyApp/.sencha/app/sass-impl.xml:200: The following error occurred while executing this line:
/Users/jakeF/dev/SENCHA/MyApp/.sencha/app/sass-impl.xml:206: com.sencha.exceptions.ExProcess: compass process exited with non-zero code : 1

My system compass compiles it fine. Just the Sencha build process is breaking things.

My system ruby-

  ruby 2.1.1p76 (2014-02-24 revision 45161) [x86_64-darwin13.0]

解决方案

I got this response in the Sencha forums: You can specify the path to the version of ruby to use in YouApp/.sencha/app/default.properties

So I added this line in said file:

build.ruby.path=/Users/jakef/.rvm/rubies/ruby-2.1.1/bin/ruby

And it worked!

这篇关于Sencha Touch 2.3-Sass @mixin破坏了sencha应用程序的构建的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆