我有一个包含在我的Angular 4项目中的外部js文件,例如,如果我有(日期选择器)及其功能:
var date_select_field = $('input[name="datetimepicker"]');
if (date_select_field.length) {
var start = moment().subtract(29, 'days');
date_select_field.daterangepicker({
startDate: start,
autoUpdateInput: false,
singleDatePicker: true,
showDropdowns: true,
locale: {
format: 'DD/MM/YYYY'
}
});
date_select_field.on('focus', function () {
$(this).closest('.form-group').addClass('is-focused');
});
date_select_field.on('apply.daterangepicker', function (ev, picker) {
$(this).val(picker.startDate.format('DD/MM/YYYY'));
$(this).closest('.form-group').addClass('is-focused');
});
date_select_field.on('hide.daterangepicker', function () {
if ('' === $(this).val()) {
$(this).closest('.form-group').removeClass('is-focused');
}
});
}
如果我路由到另一个页面localhost/register
然后返回上一页,则datepicker将无效,因为DOM无法知道此功能是什么以及链接了哪个页面。
那么如何在每一条路线中重新加载js文件?
答案 0 :(得分:1)
您可以将js本地导入ts文件,如下所示:import'../../../ scripts / custom.js';
然后在custom.js中声明要像这样使用的方法名称 声明var fAlert; 然后在像ngOnInit这样的地方直接使用这个方法
fAlert();