typescript – 如何在不同文件的Angular 2组件中使用javascript函数

前端之家收集整理的这篇文章主要介绍了typescript – 如何在不同文件的Angular 2组件中使用javascript函数前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个javascript文件,其中包含一些数据操作函数(根本没有DOM操作),例如浮点舍入,数学运算,等等

我的js文件名为myexample.js就是这样

function example(input) {
  return input * 2
}
module.exports = { example: example }

然后我有我的角度组件example.component.ts

例如:

import { Component,EventEmitter} from '@angular/core';
@Component({
  selector: 'input-number',template: `<input 
              type='text' 
              [(value)]='value' 
              (blur)='runExample()' 
             />`,inputs: ['value'],outputs: ['valueChange']
})
export class Example {
  value: string;
  valueChange = new EventEmitter;

  runExample() {
    let val = parseFloat(this.value);
    // here i need to call example(input) from myexample.js
    // and assign the return to val
    this.valueChange.emit(val);
  }

我现在已经搜索了很长一段时间并试了很多东西,但遗憾的是没有运气.

如果有人可以提供帮助,我将非常感激.

您可以在TypeScript中导出函数
export function example(input) {
  return input * 2;
}

并以这种方式使用它(假设您的文件名是lib.ts):

import {example} from './lib';

example();

如果要使用CommonJS文件,则需要在map属性中配置SystemJS:

System.config({
  (...)
  map: {
    lib: 'path/to/lib/js'
  }
});

您可以使用相同的方式导入模块:

import {example} from './lib';

猜你在找的Angularjs相关文章