使用dropzone和Angular 2的简单方法
我对SystemJS和NGModules有点迷茫,我只是按照说明去做,让它正常工作 在的例子中,我尝试在我的头脑中添加dropzone.js/css作为脚本,并在我的表单中添加了类dropzone,但它不起作用,dropzone没有创建使用dropzone和Angular 2的简单方法,angular,dropzone.js,Angular,Dropzone.js,我对SystemJS和NGModules有点迷茫,我只是按照说明去做,让它正常工作 在的例子中,我尝试在我的头脑中添加dropzone.js/css作为脚本,并在我的表单中添加了类dropzone,但它不起作用,dropzone没有创建 任何人都可以向我展示如何在Angular 2最终版本中实现Dropzone?这里是我包装Dropzone.js的一个小组件: 首轮 npm安装-保存dropzone 我真的希望这能有所帮助。这里是我包装Dropzone.js的一个小组件: 首轮 npm安装-保存
任何人都可以向我展示如何在Angular 2最终版本中实现Dropzone?这里是我包装Dropzone.js的一个小组件: 首轮 npm安装-保存dropzone
我真的希望这能有所帮助。这里是我包装Dropzone.js的一个小组件: 首轮 npm安装-保存dropzone
我真的希望这能有所帮助。我是否可以提出以下建议:
let Dropzone=require不再被认为是Angular 2+中的加农炮,我们现在有5个,接近版本6了,我可以建议这样做吗: let Dropzone=require不再被认为是Angular 2+中的加农炮,我们现在有5个,接近版本6了使用Angular 6 Angular版本的步骤:6.1.8 一,。使用angular CLI创建angular项目,并从dropzonejs.com网站下载dropzone dist文件夹 二,。将dropzone.css从projects../src/assets/css文件夹中下载的dist文件夹中放入,如果不存在,则在styles.css文件中创建并导入它,如下所示
styles.css
----------
@import "../src/assets/css/dropzone.css";
三,。将下载的dist文件夹文件中的dropzone.js放入projects../src/assets/js文件夹(如果不存在),然后创建并将以下值放入angular.json文件的scripts选项中:
四,。现在,在组件ts文件(例如app.component.ts)中,按照以下方式定义Dropzone及其选项:
app.component.ts
----------------
import { Component, OnInit } from '@angular/core';
declare var Dropzone: any;
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent implements OnInit {
ngOnInit(): void {
Dropzone.options.pdfDropzone = {
paramName: 'file',
maxFilesize: 5, // MB
uploadMultiple: true,
autoProcessQueue: true,
init: function () {
this.on('addedfile', function (file) {
const removeButton = Dropzone.createElement('<button class=\'btn btn-sm btn-block\'>Remove file</button>');
const _this = this;
removeButton.addEventListener('click', function (e) {
e.preventDefault();
e.stopPropagation();
_this.removeFile(file);
});
file.previewElement.appendChild(removeButton);
});
}
};
}
}
五,。现在,在html文件中添加以下div:
app.component.html
------------------
<div>
<form action="http://localhost:8080/api/upload/file"
class="dropzone dz-clickable"
id="pdf-dropzone">
</form>
</div>
表单元素的Action属性是dropzone上载文件的url
它对我有用。干杯 使用Angular 6 Angular版本的步骤:6.1.8
一,。使用angular CLI创建angular项目,并从dropzonejs.com网站下载dropzone dist文件夹
二,。将dropzone.css从projects../src/assets/css文件夹中下载的dist文件夹中放入,如果不存在,则在styles.css文件中创建并导入它,如下所示
styles.css
----------
@import "../src/assets/css/dropzone.css";
三,。将下载的dist文件夹文件中的dropzone.js放入projects../src/assets/js文件夹(如果不存在),然后创建并将以下值放入angular.json文件的scripts选项中:
四,。现在,在组件ts文件(例如app.component.ts)中,按照以下方式定义Dropzone及其选项:
app.component.ts
----------------
import { Component, OnInit } from '@angular/core';
declare var Dropzone: any;
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent implements OnInit {
ngOnInit(): void {
Dropzone.options.pdfDropzone = {
paramName: 'file',
maxFilesize: 5, // MB
uploadMultiple: true,
autoProcessQueue: true,
init: function () {
this.on('addedfile', function (file) {
const removeButton = Dropzone.createElement('<button class=\'btn btn-sm btn-block\'>Remove file</button>');
const _this = this;
removeButton.addEventListener('click', function (e) {
e.preventDefault();
e.stopPropagation();
_this.removeFile(file);
});
file.previewElement.appendChild(removeButton);
});
}
};
}
}
五,。现在,在html文件中添加以下div:
app.component.html
------------------
<div>
<form action="http://localhost:8080/api/upload/file"
class="dropzone dz-clickable"
id="pdf-dropzone">
</form>
</div>
表单元素的Action属性是dropzone上载文件的url
它对我有用。干杯 如果您没有绑定到dropzone.js,我可能会向您推荐以下库
我已经编写了一个高度可定制的Angle组件,它实现了正确的拖放行为,因此我不需要反复复制它。它以输出事件的形式返回已删除文件的列表。
这是可以找到的
导入模块后,您可以访问组件:
<ngx-dropzone [multiple]="false" [maxFileSize]="2000"></ngx-dropzone>
如果您没有绑定到dropzone.js,我可能会向您推荐以下库
我已经编写了一个高度可定制的Angle组件,它实现了正确的拖放行为,因此我不需要反复复制它。它以输出事件的形式返回已删除文件的列表。
这是可以找到的
导入模块后,您可以访问组件:
<ngx-dropzone [multiple]="false" [maxFileSize]="2000"></ngx-dropzone>
事件发射器声明traceur.js和jquery是必需的,我遇到了问题。我还查找了事件发射器的用法,但不推荐您使用:我对事件发射器声明traceur.js和jquery是必需的这一点有意见。我还查找了事件发射器的用法,不推荐您使用:我解决了您的问题了吗?我解决了您的问题了吗?
<ngx-dropzone [customContent]="customDropzone" (filesDropped)="onFilesDropped($event)">
<ng-template #customDropzone>
<div class="custom-dropzone">
This is my custom content
</div>
</ng-template>