首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在angular 2项目中使用ionic 2的组件?

如何在angular 2项目中使用ionic 2的组件?
EN

Stack Overflow用户
提问于 2017-03-20 17:17:05
回答 1查看 2.1K关注 0票数 1

我想在我的angular 2项目的一个功能模块中使用ionic 2。我想在我的一些组件中使用离子的组件或标签。我做过的每件事,但我得到了这个错误EXCEPTION: Expected to not be in Angular Zone, but it is!

有人能告诉我如何在angular 2项目中使用ionic 2的组件,而不是使用ionic-cli来创建一个新的吗?

EN

回答 1

Stack Overflow用户

发布于 2017-03-21 19:23:24

首先使用以下命令创建一个angular 2项目

代码语言:javascript
复制
ng new myapp --style=scss

然后

代码语言:javascript
复制
cd myapp
npm install --save ionic-angular ionicons

您可能会收到一些警告,例如

代码语言:javascript
复制
npm WARN ionic-angular@2.0.0-rc.2 requires a peer of @angular/common@2.1.1 but none was installed.
npm WARN ionic-angular@2.0.0-rc.2 requires a peer of @angular/compiler@2.1.1 but none was installed.
...

它甚至可以处理警告,但如果您更喜欢摆脱所有这些警告,您可以使用以下命令检查离子角度声明的内容:

代码语言:javascript
复制
npm view ionic-angular peerDependencies

然后相应地更新package.json和npm install.中的版本,您还可以删除@angular/router,因为Ionic提供了自己的导航机制。

代码语言:javascript
复制
npm uninstall --save @angular/router

然后是ng serve

在项目中使用Ionic的下一步是更改src/app/app.module.ts以导入IonicModule,而不是Angular的BrowserModule,并引导IonicApp:

代码语言:javascript
复制
import { NgModule } from '@angular/core';
import { IonicApp, IonicModule } from 'ionic-angular';

import { AppComponent } from './app.component';

@NgModule({
  imports: [ IonicModule.forRoot(AppComponent) ],
  declarations: [ AppComponent ],
  bootstrap: [ IonicApp ]
})
export class AppModule { }

IonicApp组件使用ion-app作为其选择器,因此您还需要修改src/index.html,将其替换为。

要使项目结构与Ionic CLI生成的内容有点类似,请创建一个src/主题文件夹,然后下载这两个文件并将其放入该文件夹中: ionic.scss和variables.scss。

最后,通过编辑angular-cli.json将它们包含在构建过程中,以便首先在app内的样式中加载variables.scss:

代码语言:javascript
复制
"styles": [
  "theme/variables.scss",
  "styles.scss"
],

请注意,您必须重新启动ng serve才能使此更改生效。

拥有一个基本的离子应用程序的最后一步是创建一个页面组件,并使用ion-nav将其加载到AppComponent中。

为此,请创建一个src/pages文件夹,其中包含一个包含以下内容的home.page.ts文件:

代码语言:javascript
复制
import { Component } from '@angular/core';

@Component({
  selector: 'page-home',
  templateUrl: 'home.page.html'
})
export class HomePage {

  message = 'Welcome!';

}

以及对应的home.page.html模板,包含一个基本的离子页面,包括头部和内容:

代码语言:javascript
复制
<ion-header>
  <ion-navbar>
    <ion-title>Ionic App</ion-title>
  </ion-navbar>
</ion-header>
<ion-content padding>
  {{ message }}
</ion-content>

您可以从ionic2-with-angular-cli .Hope获取完整的文档,这对您很有帮助。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42899676

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档