使用Nativescript Schematics时未加载模块

时间:2019-04-24 10:32:35

标签: angular nativescript angular2-nativescript nativescript-angular angular-schematics

我正在尝试使用NativeScript Schematics在Angle Web和移动应用程序之间进行代码共享。这是我的代码结构

Code Structure

我在移动专用HTML文件中使用了[[ngModel)],并且还在我的authentication.module.tns.ts中导入了NgFormsModule,它是NativeScript专用模块文件。但是,当我调试时,我看不到NativeScriptFormsModule被加载。另外,我在运行该应用程序时遇到错误

Error: No value accessor for form control with unspecified name attribute

这是我的AuthenticationModule(authentication.module.tns.ts)代码

@NgModule({
  declarations: [
    ...componentDeclarations
  ],
  imports: [
    NativeScriptCommonModule,
    NativeScriptFormsModule,
    NativeScriptLocalizeModule,
    AuthenticationRoutingModule,
    ...importsDeclarations
  ],
  providers: [
  ],
  schemas: [NO_ERRORS_SCHEMA]
})
export class AuthenticationModule { }

请注意,此时创建的导入和声明数组为空,以照顾将来的导入。

我注意到的另一个奇怪的问题是,如果我直接导​​入AuthenticationRoutingModule,那么它将正确加载。但是,如果我通过importsDeclarations导入它,则不会加载它。

类似地,我也使用nativescript-localize插件对字符串进行本地化。我已经创建了src / i18n / en.default.ts文件。但是我不断收到消息

'/ project / src / i18n'为空:没有要本地化的内容

我什至尝试将文件重命名为en.default.tns.ts。但是没有运气。这两个问题看起来都像本机脚本加载文件的方式。有人可以让我知道这里出了什么问题吗?

编辑

我对此问题进行了进一步的调试,由于webpack无法加载所需的模块,因此似乎是问题所在。我在

处有示例代码

https://github.com/phatakrajan/ns-codeshare-ui

1 个答案:

答案 0 :(得分:0)

您将必须导入NativeScriptFormsModule,这也将在内部导入NgFormsModule

本地化文件也应该是JSON而不是TS,

src
  | i18n
      | en.json           <-- english language
      | fr.default.json   <-- french language (default)
      | es.js