前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Angular4记账webApp练手项目之二(在angular4项目中使用Angular WeUI)

Angular4记账webApp练手项目之二(在angular4项目中使用Angular WeUI)

作者头像
易兒善
发布2018-08-21 15:21:34
2.2K0
发布2018-08-21 15:21:34
举报
文章被收录于专栏:挖坑填坑

写在前面

在angular4项目中 例子是基于之前文章:利用angular-cli构建Angular4.X项目 可以参考官网:https://cipchk.github.io/ngx-weui/#/docs/start

本来是写在后面的回顾,感觉放在前面比较好。

1、如何使用第三方库,安装-引用(主要参考官方文档) 2、{{}}指令,单向绑定数据,声明数据-绑定数据 3、[(ngModel)]指令,双向绑定数据,声明数据-绑定数据 4、*ngFor指令,循环渲染 5、[ngStyle] 指令,动态绑定样式。 更多angular指令及用法参看官网。

安装及引用

安装

代码语言:javascript
复制
npm install angular-weui --save

安装后还需要引用weui 样式以及我们的font-awesome图标苦,在我们项目index.html中引用

代码语言:javascript
复制
<!-- index.html -->
<link href="//res.wx.qq.com/open/libs/weui/1.1.2/weui.min.css" rel="stylesheet">
  <link href="https://cdn.bootcss.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet">

我们还要在app.module.ts中添加引用

代码语言:javascript
复制
import { WeUIModule } from 'angular-weui';

imports: [
    BrowserModule,
    FormsModule,
    HttpModule,
    WeUIModule  // 这里也要添加
  ],

修改菜单组件

在app.component.html添加菜单组件

代码语言:javascript
复制
<app-menu></app-menu>

我们参照官网简化使用了tabbar组件,修改menu.component.html如下:

代码语言:javascript
复制
<weui-tabbar>
  <weui-tabbar-item>
    <span class="weui-tabbar__icon">
      <i class="fa fa-edit"></i>
    </span>
    <p class="weui-tabbar__label">记账</p>
  </weui-tabbar-item>
  <weui-tabbar-item>
    <span class="weui-tabbar__icon">
      <i class="fa fa-bar-chart"></i>
    </span>
    <p class="weui-tabbar__label">统计</p>
  </weui-tabbar-item>
</weui-tabbar>

浏览器中查看,菜单成功创建

这里写图片描述

修改记账组件

在app.component.html添加记账组件

代码语言:javascript
复制
<app-menu></app-menu>
<app-accounting></app-accounting>

在accounting.component.ts中添加一些数据如下:

代码语言:javascript
复制
export class AccountingComponent implements OnInit {
  money = ''; // 金额
  billTypes = []; // 记账类型
  constructor() {
    let n = 0;
    while (n < 20) { // 模拟一些数据
      this.billTypes.push({name: '食物',  id: n});
      n++;
    }
  }
  ngOnInit() {

  }

}

修改accounting.component.html文件布局,添加标题,金额输入框,记账类型选择按钮

代码语言:javascript
复制
<!-- 标题 -->
<weui-navbar >
  <weui-navbar-item >理财从记账开始</weui-navbar-item>
</weui-navbar>

<div style="margin-top: 50px;">
  <!-- 金额输入框 -->
  <weui-input type="number" name="num" placeholder="请输入金额" [(ngModel)]="money">
    <label class="weui-label">¥</label>
  </weui-input>
  <!-- 九宫格按钮 -->
  <div class="weui-grids">
    <a href="javascript:;" class="weui-grid" *ngFor="let b of billTypes">
      <div class="weui-grid__icon">
        <i class="fa fa-2x fa-bar-chart"></i>
      </div>
      <p class="weui-grid__label">{{b.name}}</p>
    </a>
  </div>
</div>

在页面中查看,发现底部菜单和顶部标题,也跟着滚动。

这里写图片描述

解决上面问题,有两个思路,1、固定底部和顶部,2、固定中间按钮。 我选择固定中间按钮,使用动态绑定样式让中间部分的高度等于页面高度-底部和顶部的高度,设置overflo为scroll; 在accounting.component.ts中添加样式数据如下:

代码语言:javascript
复制
  contentStyle = {   // 绑定的样式
    'overflow': 'scroll',
    'height': window.screen.availHeight - 145 + 'px'
  };

在accounting.component.html绑定样式

代码语言:javascript
复制
<div class="weui-grids" [ngStyle]="contentStyle">

完成

这里写图片描述

引用非样式的组件

例如提示框组件 html中添加元素

代码语言:javascript
复制
<weui-toptips [content]="toastText" #TopTip></weui-toptips>

ts文件中引入使用

代码语言:javascript
复制
import {WeUITopTips} from 'angular-weui';
代码语言:javascript
复制
 @ViewChild('TopTip') TopTip: WeUITopTips;
  toastText= '';
    add(id: number) {
       this.alert(id.toString());
  }
    /// 自己封装的消息提示
  private alert(msg) {
    this.toastText = msg;
    this.TopTip.show();
  }
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017.10.07 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 写在前面
  • 安装及引用
  • 修改菜单组件
  • 修改记账组件
  • 引用非样式的组件
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档