NativeScript Angular can';找不到css文件

NativeScript Angular can';找不到css文件,nativescript,angular2-nativescript,Nativescript,Angular2 Nativescript,我刚刚开始使用NativeScript,正在学习本教程: NativeScript无法在与我的组件相同的目录中找到css文件,即使在指定moduleId时也是如此 // login.component.ts @Component({ moduleId: module.id, styleUrls: [ './login-common.css', './login.android.css', ], templateUrl: './login.html', }) ex

我刚刚开始使用NativeScript,正在学习本教程:

NativeScript无法在与我的组件相同的目录中找到css文件,即使在指定moduleId时也是如此

// login.component.ts

@Component({
  moduleId: module.id,
  styleUrls: [
    './login-common.css',
    './login.android.css',
  ],
  templateUrl: './login.html',
})
export class LoginComponent implements OnDestroy { ... }
我的目录结构是:

/app
  /pages
    /login
      login.android.css
      login-common.css
      login.component.ts
      login.html
我已经从emulator中删除了用户数据,停止/重新启动了应用程序,四倍检查了文件名,但我仍然得到:

正在刷新应用程序。。。JS:ns渲染器:启动时出错 JS:ns渲染器:文件 /data/data/org.nativescript.Groceries/files/app/pages/login/.login.android.css 不存在。决议来源: /data/data/org.nativescript.Groceries/files/app/pages/login/.login.android.css

我也尝试过不指定
moduleId
值,并且使用了与
/app
相关的路径,我得到了相同的错误。没有其他组件使用这些文件。我做错了什么

更新:


我已经制作了另一个组件,并且能够成功地导入一个与组件相关的样式表。是否需要清除某种类型的生成缓存?

tns
运行时实际生成您的应用程序时,它将重新写入与平台相关的文件

这意味着任何
.android
都将成为根
.ts/.css/.html
文件

login.android.css
变成
login.css

与iOS相关的文件也是如此。这允许您只导入通用文件,它将为您的运行时智能地筛选出正确的文件

在您的示例中,只需导入
login.css
,而不是列出的两个样式表。在您的
login android.css
文件中,导入
login common.css
文件

编辑:


关于
moduleId
,我始终建议应用您的组件。它使路径相对于当前文件夹。因此,如果您添加它,它将使
。/
相对于您的
登录
组件的文件夹进行导入

tns
运行时实际构建您的应用程序时,它将重写与平台相关的文件

这意味着任何
.android
都将成为根
.ts/.css/.html
文件

login.android.css
变成
login.css

与iOS相关的文件也是如此。这允许您只导入通用文件,它将为您的运行时智能地筛选出正确的文件

在您的示例中,只需导入
login.css
,而不是列出的两个样式表。在您的
login android.css
文件中,导入
login common.css
文件

编辑:

关于
moduleId
,我始终建议应用您的组件。它使路径相对于当前文件夹。因此,如果您添加它,它将使
。/
相对于您的
登录
组件的文件夹进行导入