首页 > 解决方案 > 如何以角度将js文件的功能调用到打字稿组件

问题描述

我已将 js 文件放在 assets 文件夹中,并将其导入 index.html。

我需要在角度组件中使用js文件的功能

via.js

var _via_reg_canvas = document.getElementById('region_canvas');
function _via_init() {
       show_message(VIA_NAME + ' (' + VIA_SHORT_NAME + ') version ' + VIA_VERSION +
        '. Ready !', 2 * VIA_THEME_MESSAGE_TIMEOUT_MS);

    if (_via_is_debug_mode) {
        document.getElementById('ui_top_panel').innerHTML += '<span>DEBUG MODE</span>';
    }

    document.getElementById('img_fn_list').style.display = 'block';
    document.getElementById('leftsidebar').style.display = 'table-cell';

    project_init_default_project();

  _via_init_reg_canvas_context();
  _via_init_keyboard_handlers();
  _via_init_mouse_handlers();
  image_grid_init();

  show_single_image_view();
  init_leftsidebar_accordion();
  attribute_update_panel_set_active_button();
  annotation_editor_set_active_button();
  init_message_panel();
}

视图.ts

inside this ts , I want to use _via_init() function which is from via.js

标签: javascriptangulartypescript

解决方案


您需要从 js 文件中导出该函数。

export function _via_init() {
       ...
}

现在在您的 view.ts 中,您只需像这样导入它:

import * as via from 'path/to/assets/via.js'

并像这样使用它:

via._via_init();

推荐阅读