angular 引入 component 报错
每天抽出一些时间学习 Angular2 ,并准备把手头上的项目移植为 Angular2 , 不过今天又遇到了一些小问题。
准备写一个导航类适于管理后台常见的右边导航,如博客园的这种:
!
使用 g generate component nav-left
建立了一个名为 nav-left 的导航组件。
这里需要检查app,modile.ts中是否已经有你新建的组件。一般会自动添加,如果不存在需要添加引用:
import { NavLeftComponent } from './nav-left/nav-left.component';
模块装饰器需要添加:
@NgModule({
declarations: [
NavLeftComponent,
]
})
并在 nav-left.component.ts 中新建了一个类,Item 用来保存菜单的项,代码如下:
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'app-nav-left',
templateUrl: './nav-left.component.html',
styleUrls: ['./nav-left.component.css'],
})
export class NavLeftItem{
name:string;
path:string;
data:any;
active?:string="";
}
export class NavLeftComponent implements OnInit {
constructor() { }
}
开开心心的运行查看报错结果^^~!
报错的信息忘截图了,大致的意思是找不到这个模块,或这个模块没办法解析。
这步骤花了好长时间,最终确定问题竟然有两处,也没继续深研,分别是:
1:需要单独创建数据类。把Item单独提取一个类。 最终结果如图:
2:我在组件中写了一些预定义的数据,如下:
//这里需要注意变量顺序,我这里是错的,因为titleList中的其他变量引用还未定义。。。。
public titleList :Array<{"name":string,"list":any}> =[
{"name":"后台工具","list":this.adminTool},
{"name":"运维工具","list":this.maintenanceTool},
{"name":"运营工具","list":this.statisticalTool},
{"name":"GM工具","list":this.gmlTool}
];
/**
* 后台工具
*/
public adminTool:Array<NavLeftItem> = [
{"name":"账号列表","path":"manage/index","data":null},
{"name":"账号权限","path":"manage/index","data":null},
{"name":"账号密码","path":"manage/index","data":null},
{"name":"账号添加","path":"manage/index","data":null},
{"name":"游戏列表","path":"manage/index","data":null},
{"name":"渠道列表","path":"manage/index","data":null},
{"name":"渠道添加","path":"manage/index","data":null},
{"name":"操作日志","path":"manage/index","data":null},
{"name":"操作详情","path":"manage/index","data":null},
];
/**
* 运维工具
*/
public maintenanceTool:Array<NavLeftItem> = [
{"name":"Log服务器列表","path":"manage/index","data":null},
{"name":"Log服务器添加","path":"manage/index","data":null},
{"name":"Log入口服务列表","path":"manage/index","data":null},
{"name":"Log入口服务配置","path":"manage/index","data":null},
{"name":"Log服务器状态","path":"manage/index","data":null},
{"name":"Log服务器日志","path":"manage/index","data":null},
{"name":"Log服务器Qps统计","path":"manage/index","data":null},
{"name":"Log服务器数据库信息","path":"manage/index","data":null},
{"name":"Log服务器合并","path":"manage/index","data":null},
];
一直编译不通过,最终确定问题是顺序问题。。。很尴尬。修改顺序为:
先定义:titleList 然后定义其他几项。
问题解决。~~~~~~~~
angular 引入 component 报错的更多相关文章
- 按需引入element-ui报错
按需引入element-ui报错 项目用的脚手架是 vue-cli 3 按照官方文档按需引入组件: https://element.eleme.cn/#/zh-CN/component/quickst ...
- delphi 调用Webservice 引入wsdl 报错 document empty
delphi 调用Webservice 引入wsdl 报错 document empty 直接引入wsdl 地址报错 document empty 解决办法:在浏览器里保存为xml文件,然后在开发环境 ...
- 新引入thinkphp报错“应用目录[./Application/]不可写,目录无法自动生成! 请手动生成项目目录~”
新引入thinkphp报错“应用目录[./Application/]不可写,目录无法自动生成! 请手动生成项目目录~”, 其主要原因是文件夹的权限问题,手动将项目文件夹权限更改为可读可写就OK,具体操 ...
- php Yaf_Loader::import引入文件报错的解决方法
php Yaf_Loader::import引入文件报错的解决方法 改下配置文件就行<pre>yaf.use_spl_autoload=1</pre> 也可以PHP动态修改 毕 ...
- electron-vue 引入OpenLayer 报错 Unexpected token export
electron-vue 引入OpenLayer 报错 Unexpected token export 解决办法: 在 .electron-vue/webpack.renderer.config.js ...
- 【Vue.js】vue引入组件报错:该组件未注册?
[Vue warn]: Unknown custom element: <QuestionnaireOption> - did you register the component cor ...
- angular 的杂碎报错小知识
1:[ng:areq] Angular出现这种错误的原因,是由于没有在页面中使用模块引入controller导致的 所以 请确保你定义了这个controller后也引用了它. 2:Failed to ...
- vue 引入 fontawesome 报错 Could not find one or more icon(s) 解决
在 vue 项目中引用 fontawesome , 按照官方说明如下步骤操作 1. 终端中执行 $ npm i --save @fortawesome/fontawesome-svg-core $ n ...
- vue2.0+按需引入element-ui报错
项目使用vue脚手架自动生成的,vue版本为^2.5.16.项目中需要按需使用element-ui,根据element-ui的官方文档,一开始在babel.config.js文件中修改配置 modul ...
随机推荐
- cloudstack的ZONE删除不掉?来这招吧
老是提示什么物理网络被使用之类的, 可以进数据库去直接删除. I want to delete a zone,by this way:(1)delete all VMs in zone.(2)dele ...
- [Android] 混音线程MixerThread
MixerThread是Android音频输出的核心部分,所有Android的音频都需要经过MixerThread进行混音后再输出到音频设备. MixerThread的继承关系如下: MixerThr ...
- ATR的基本结构与意义(无历史字符部分)
Reset 3B FA 13 00 00 81 31 FE 45 4A 43 4F 50 34 31 56 32 32 31 96 复位应答 ATR TS( The Initial character ...
- UART接口
1.UART UART(Universal Asynchronous Receiver and Transmitter)通用异步收发器(异步串行通信口),是一种通用的数据通信协议,它包括了RS232. ...
- Android AlarmManager实现不间断轮询服务
在消息的获取上是选择 轮询还是推送得根据实际的业务需要来技术选型,例如对消息实时性比较高的需求,比如微博新通知或新闻等那就最好是用推送了.但如果只是一般的消息检测比如 更新检查,可能是半个小时或一个小 ...
- 为什么同时需要IP地址和MAC地址
每个以太网设备在出厂时都有一个唯一的MAC地址,为什么还需要为每台主机再分配一个IP地址?或者说每台主机都分配唯一的IP地址,为什么还要在网络设备(如网卡,集线器,路由器等)生产时内嵌一个唯一的MAC ...
- 初识DSP
初识DSP 1.TI DSP的选型主要考虑处理速度.功耗.程序存储器和数据存储器的容量.片内的资源,如定时器的数量.I/O口数量.中断数量.DMA通道数等.DSP的主要供应商有TI,ADI,Motor ...
- STM32 CAN 波特率设置及采样点设置
一.CAN波特率 STM32 位时间定义: ● 同步段(SYNC_SEG):通常期望位的变化发生在该时间段内.其值固定为1个时间单元(1 x tCAN).● 时间段1(BS1):定义采样点的位置.它包 ...
- banana pro 板子
http://www.lemaker.org/cn/article-23-1.html
- java笔记11之二维数组
格式1: 二维数组:就是元素为一维数组的一个数组 数据类型[][] 数组名 = new 数组类型[m][n] 其中m为行 n为列 注意: A:以下格式也可以表示二维数组 a:数据 ...