引用第三方javascript库的办法:
1. 使用浏览器javascript库, 在html文件中添加<script .....js></script>
然后在.ts文件中如下:
declare var base64: any;
重点在于这个any关键字.然后在函数中就可以使用base64的函数了:
var encodedStr = base64.encode(bytes);
2. 使用npm安装的方法, 先安装js库, npm install base-64 utf8 --save
然后在ts文件中:
import * as base64 from "base-64";
var encodedStr = base64.encode(bytes);
MathJax处理完了整个页面, 就不会再次处理了, 除非你让它这么做.
http://docs.mathjax.org/en/latest/web/start.html#putting-mathematics-in-a-web-page
如果是动态显示从服务器加载的公式, 需要用到这两个方法:
MathJax.typeset()
和 MathJax.typesetPromise()
.
如果第三方库比较有名, 应该已经有声明文件了(declaration file), 可以通过下面的网站查询:
http://microsoft.github.io/TypeSearch/
使用第三方js库以及d.ts, 这两个东西都要下载并安装到项目里面, 原始的js库必须引入,
而且几乎所有的第三方js库都和d.ts分开的, 请参看:
在ts2.0中, 使用declaration 文件非常容易, 首先安装它, 例如:
npm install --save @types/lodash
然后使用import就可以了:
import * as _ from "lodash";
_.padStart("Hello TypeScript!", 20, " ");
官方网站需要随时查阅:
https://www.typescriptlang.org/docs/handbook/declaration-files/consumption.html
扩展名为.vue的文件需要webpack的支持.
对于vue的Prop支持, 在ts中用@Prop来表示. 组件用@Component表示.
7中定义vue组件的办法, 参见链接:
https://vuejsdevelopers.com/2017/03/24/vue-js-component-templates/
所有冒号之后的都是类型信息:
loginService: () => loginService,
这个编译之后变为:
loginService, 是一个全局变量, 类型为一个函数, 不带参数, 返回loginService. 参考:
https://stackoverflow.com/questions/34274520/whats-the-meaning-of-in-typescript-fat-arrow
所有的Vue组件也都是Vue实例!!!
高能!!!!
碰到一个Failed to mount component: template or render function not defined错误, 找了半天, 发现是拼写错误
import Qiz from './core/home/qiz.component';
应该写成:
import Qiz from './core/home/qiz.vue';
==============================================
https://developer.mozilla.org/en-US/docs/Web/API/DOMParser
DOMParser
1. parseFromString(string, mimeType) mimeType: text/html
返回一个HTMLDocument,也是一个Document
2. 添加属性,
var b = document.querySelector("button");
b.setAttribute("name", "helloButton");
3. 由html转换为string,
$('<some element/>')[0].outerHTML