Javascript JS工具到Typescript
最近我正在将我的Javascript JS工具到Typescript,javascript,angular,typescript,ionic2,ionic3,Javascript,Angular,Typescript,Ionic2,Ionic3,最近我正在将我的Ionic1项目迁移到Ionic2。有趣! 目前的一个障碍是将一长串用JS编写的工具函数迁移到Ionic2项目中,例如CmToFeet/InchesToCM/Farenheitocelius。 我不知道如何在项目中正确地包含这些文件,并确保在构建过程中考虑它们。我是否可以将它们包含在index.html中,它们将自动可用?我需要做更多吗? 有什么建议吗?最简单的方法之一就是将其视为另一项资产。为此,您可以在src/assets/scripts中创建一个文件夹,将这些js文件放在那
Ionic1
项目迁移到Ionic2
。有趣!
目前的一个障碍是将一长串用JS编写的工具函数迁移到Ionic2项目中,例如CmToFeet
/InchesToCM
/Farenheitocelius
。
我不知道如何在项目中正确地包含这些文件,并确保在构建过程中考虑它们。我是否可以将它们包含在index.html
中,它们将自动可用?我需要做更多吗?
有什么建议吗?最简单的方法之一就是将其视为另一项资产。为此,您可以在
src/assets/scripts
中创建一个文件夹,将这些js文件放在那里,然后在index.html
文件中添加脚本标记,如下所示:
<script src="assets/scripts/jsFileName.js"></script>
请注意,通过这样做,自动完成功能将不起作用,因为它被声明为类型
any
。据我所知,用新创建的ionic2项目复制ionic1项目将更快/更容易,并避免你撞到墙上。因为从ionic1->ionic2这是一个巨大的结构变化,当你将typescript添加到组合中时,情况会更糟。但那可能只是我:)但这与他的问题无关;)要包含外部javascript,您只需将其包含在index.html
中,如果它导出某个成员,您可以在导入…
下,但在@组件上声明它,并使用声明var CmToFeet:any代码>用于example@sameera207-我很乐意避免所有TS的东西,但是本机的ionic2功能要好得多。是的,我正在复制这个项目,但是我想保留的工具库。@ivaro18-你能给我发一个链接到一个例子吗?你的意思是什么?我必须用装饰器扩展我的JS代码吗?你能给一个例子添加一个链接吗?你的意思是什么?那太棒了。好吧,我明白了。这样,它们将自动添加到构建过程中。JS文件只是一个松散的函数集合,没有结构。因此,我将它们称为cmToFeet()
或feetToCM()
,没有前导的ModuleName
。很高兴听到这个消息:)
import {... } from '...';
declare var CmToFeet: any; // <- Like this
@Component({
selector:'my-page',
templateUrl: 'my-page.html',
})
export class MyPage {
// ...
}