Angular4问题记录

1.No template specified for component 'RightsComponent'

组件没有被ngmodule引用,一般是路由或者配置出现了问题,检查即可

2.Cannot find module '@angular-devkit/core'

更改package.json文件中devDependencies的@angular/cli版本,然后执行npm i 即可

3.使用ngx-weui 的weui-infiniteloader组件时,导致(scroll)无效

weui-infiniteloader是ngx-weui的上拉加载组件,使用该组件时,无法再外层节点或者该节点使用(scroll)监听滑动距离,暂时不清楚原因.

解决办法:使用jq的监听方法,监听.weui-infiniteloader__content样式即可

$(".weui-infiniteloader__content").scroll((e) =>{

    // ....

});

4.Safari和其它老式浏览器不支持Date和Currency管道需要ECMAScript国际化(I18n)API

该问题可以用垫片(Polyfill)解决。

<script src="https://cdn.polyfill.io/v2/polyfill.min.js?features=Intl.~locale.en"></script>

5 文件上传字节流转换后打包过程报类型不符合

   
    let _file: File = event.target.files[0];
    let reader = new FileReader();
    reader.readAsDataURL(_file);
    reader.onload = (e)=>{
      let obj : any = e.target.result;   
      $('#triggerImg').attr("src", obj);
    };


    question:Property 'result' does not exist on type 'EventTarget'.

因为readAsDataURL会将图片转换成base64码,再通过FileReader对象的onload方法返回回来
但是TyrScript编译器不知道你正在返回一个什么类型的东西,
e.target默认为EventTarget类型,但是result为string类型,因此会报错。
解决办法:  let obj : any = (e.target as any).result;   

**6 H5图片上传转base64显示于页面上出现sanitizing unsafe URL value data **

应该是angular4自带的检查机制引起的,解决办法

import { DomSanitizer } from '@angular/platform-browser';

let base64_Url = (e.target as any).result;
this.sanitizer.bypassSecurityTrustUrl(base64_Url);

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第一章 Nginx简介 Nginx是什么 没有听过Nginx?那么一定听过它的“同行”Apache吧!Ngi...
    JokerW阅读 32,769评论 24 1,002
  • 组件基础 组件用来包装特定的功能,应用程序的有序运行依赖于组件之间的协同工作。组件是angular应用的最小逻辑单...
    oWSQo阅读 1,391评论 0 0
  • core package 概要:Core是所有其他包的基础包.它提供了大部分功能包括metadata,templa...
    LOVE小狼阅读 2,630评论 0 3
  • 一、概说 连词是一种虚词,用于连接单词、短语、从句或句子,在句子中不单独用作句子成分。连词按其性质可分为并列连词和...
    春喜外语阅读 652评论 0 1
  • 本系列导航:剑指offer(第二版)java实现导航帖 面试题16:数值的整数次方 题目要求:实现函数double...
    ryderchan阅读 875评论 0 0