Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在Angular 6应用程序中使用带有CKEditor 4的图像上载插件?_Javascript_Angular_Ckeditor_Image Uploading - Fatal编程技术网

Javascript 如何在Angular 6应用程序中使用带有CKEditor 4的图像上载插件?

Javascript 如何在Angular 6应用程序中使用带有CKEditor 4的图像上载插件?,javascript,angular,ckeditor,image-uploading,Javascript,Angular,Ckeditor,Image Uploading,我正在使用作为富文本编辑器 我想能够上传文章到一个服务器,其中包含文本和图像在同一个请求。 我已经检查了CKEditor文档中的图像上传插件,并按照文档中提到的那样做了,但它仍然不适合我 这是我的package.json文件: { "name": "cbms", "version": "0.0.0", "license": "MIT", "scripts&q

我正在使用作为富文本编辑器
我想能够上传文章到一个服务器,其中包含文本和图像在同一个请求。
我已经检查了CKEditor文档中的图像上传插件,并按照文档中提到的那样做了,但它仍然不适合我

这是我的
package.json
文件:

{
 "name": "cbms",
 "version": "0.0.0",
 "license": "MIT",
 "scripts": {
   "ng": "ng",
   "start": "ng serve",
   "build": "ng build",
   "test": "ng test",
   "lint": "ng lint",
   "e2e": "ng e2e"
 },
 "private": true,
 "dependencies": {
   "@angular/animations": "~7.2.0",
   "@angular/cdk": "^5.0.4",
   "@angular/common": "~7.2.0",
   "@angular/compiler": "~7.2.0",
   "@angular/core": "~7.2.0",
   "@angular/forms": "~7.2.0",
   "@angular/http": "^4.0.0",
   "@angular/material": "^5.0.4",
   "@angular/platform-browser": "~7.2.0",
   "@angular/platform-browser-dynamic": "~7.2.0",
   "@angular/router": "^4.0.0",
   "@ng-bootstrap/ng-bootstrap": "^1.1.2",
   "@swimlane/ngx-datatable": "^11.1.7",
   "@types/ckeditor": "^4.9.7",
   "@types/googlemaps": "^3.26.16",
   "angular2-image-upload": "^1.0.0-rc.0",
   "angular2-moment": "^1.8.0",
   "bootstrap": "^4.0.0-beta",
   "ckeditor": "^4.11.2",
   "core-js": "^2.4.1",
   "font-awesome": "^4.7.0",
   "ng2-ckeditor": "^1.2.2",
   "resolve-url-loader": "^2.1.0",
   "rxjs": "^6.3.3",
   "rxjs-compat": "^6.3.3",
   "tether": "^1.4.0",
   "tslib": "^1.9.0",
   "typescript": "^3.2.2",
   "zone.js": "^0.8.4"
 },
 "devDependencies": {
   "@angular-devkit/build-angular": "~0.12.0",
   "@angular/cli": "~7.2.1",
   "@angular/compiler-cli": "~7.2.0",
   "@types/jasmine": "2.5.38",
   "@types/node": "~6.0.60",
   "bootstrap": "^4.0.0-beta",
   "bootstrap-loader": "^2.1.0",
   "codelyzer": "~2.0.0",
   "jasmine-core": "~2.5.2",
   "jasmine-spec-reporter": "~3.2.0",
   "jquery": "^3.2.1",
   "karma": "~1.4.1",
   "karma-chrome-launcher": "~2.1.1",
   "karma-cli": "~1.0.1",
   "karma-coverage-istanbul-reporter": "^0.2.0",
   "karma-jasmine": "~1.1.0",
   "karma-jasmine-html-reporter": "^0.2.2",
   "protractor": "~5.1.0",
   "tether": "^1.4.0",
   "ts-node": "~2.0.0",
   "tslint": "~4.5.0"
   } 
} 
<ckeditor #ckeditor 
  [config]="myCkeditorConfig"
  [(ngModel)]="ckeditorContent"
 >
</ckeditor>
this.myCkeditorConfig = {
  toolbar: [
    {
      name: 'document',
      items: ['Print']
    },
    {
      name: 'clipboard',
      items: ['Undo', 'Redo']
    },
    {
      name: 'styles',
      items: ['Format', 'Font', 'FontSize']
    },
    {
      name: 'colors',
      items: ['TextColor', 'BGColor']
    },
    {
      name: 'align',
      items: ['JustifyLeft', 'JustifyCenter', 'JustifyRight', 'JustifyBlock']
    },
    {
      name: 'basicstyles',
      items: ['Bold', 'Italic', 'Underline', 'Strike', 'RemoveFormat', 'CopyFormatting']
    },
    {
      name: 'links',
      items: ['Link', 'Unlink']
    },
    {
      name: 'paragraph',
      items: ['NumberedList', 'BulletedList', '-', 'Outdent', 'Indent', '-', 'Blockquote']
    },
    {
      name: 'tools',
      items: ['Maximize']
    },
    {
      name: 'editing',
      items: ['Scayt']
    }
],
这是我的
Component.html
文件:

{
 "name": "cbms",
 "version": "0.0.0",
 "license": "MIT",
 "scripts": {
   "ng": "ng",
   "start": "ng serve",
   "build": "ng build",
   "test": "ng test",
   "lint": "ng lint",
   "e2e": "ng e2e"
 },
 "private": true,
 "dependencies": {
   "@angular/animations": "~7.2.0",
   "@angular/cdk": "^5.0.4",
   "@angular/common": "~7.2.0",
   "@angular/compiler": "~7.2.0",
   "@angular/core": "~7.2.0",
   "@angular/forms": "~7.2.0",
   "@angular/http": "^4.0.0",
   "@angular/material": "^5.0.4",
   "@angular/platform-browser": "~7.2.0",
   "@angular/platform-browser-dynamic": "~7.2.0",
   "@angular/router": "^4.0.0",
   "@ng-bootstrap/ng-bootstrap": "^1.1.2",
   "@swimlane/ngx-datatable": "^11.1.7",
   "@types/ckeditor": "^4.9.7",
   "@types/googlemaps": "^3.26.16",
   "angular2-image-upload": "^1.0.0-rc.0",
   "angular2-moment": "^1.8.0",
   "bootstrap": "^4.0.0-beta",
   "ckeditor": "^4.11.2",
   "core-js": "^2.4.1",
   "font-awesome": "^4.7.0",
   "ng2-ckeditor": "^1.2.2",
   "resolve-url-loader": "^2.1.0",
   "rxjs": "^6.3.3",
   "rxjs-compat": "^6.3.3",
   "tether": "^1.4.0",
   "tslib": "^1.9.0",
   "typescript": "^3.2.2",
   "zone.js": "^0.8.4"
 },
 "devDependencies": {
   "@angular-devkit/build-angular": "~0.12.0",
   "@angular/cli": "~7.2.1",
   "@angular/compiler-cli": "~7.2.0",
   "@types/jasmine": "2.5.38",
   "@types/node": "~6.0.60",
   "bootstrap": "^4.0.0-beta",
   "bootstrap-loader": "^2.1.0",
   "codelyzer": "~2.0.0",
   "jasmine-core": "~2.5.2",
   "jasmine-spec-reporter": "~3.2.0",
   "jquery": "^3.2.1",
   "karma": "~1.4.1",
   "karma-chrome-launcher": "~2.1.1",
   "karma-cli": "~1.0.1",
   "karma-coverage-istanbul-reporter": "^0.2.0",
   "karma-jasmine": "~1.1.0",
   "karma-jasmine-html-reporter": "^0.2.2",
   "protractor": "~5.1.0",
   "tether": "^1.4.0",
   "ts-node": "~2.0.0",
   "tslint": "~4.5.0"
   } 
} 
<ckeditor #ckeditor 
  [config]="myCkeditorConfig"
  [(ngModel)]="ckeditorContent"
 >
</ckeditor>
this.myCkeditorConfig = {
  toolbar: [
    {
      name: 'document',
      items: ['Print']
    },
    {
      name: 'clipboard',
      items: ['Undo', 'Redo']
    },
    {
      name: 'styles',
      items: ['Format', 'Font', 'FontSize']
    },
    {
      name: 'colors',
      items: ['TextColor', 'BGColor']
    },
    {
      name: 'align',
      items: ['JustifyLeft', 'JustifyCenter', 'JustifyRight', 'JustifyBlock']
    },
    {
      name: 'basicstyles',
      items: ['Bold', 'Italic', 'Underline', 'Strike', 'RemoveFormat', 'CopyFormatting']
    },
    {
      name: 'links',
      items: ['Link', 'Unlink']
    },
    {
      name: 'paragraph',
      items: ['NumberedList', 'BulletedList', '-', 'Outdent', 'Indent', '-', 'Blockquote']
    },
    {
      name: 'tools',
      items: ['Maximize']
    },
    {
      name: 'editing',
      items: ['Scayt']
    }
],
}

我尝试将以下内容添加到配置对象中:

   extraPlugins: 'uploadimage',
   uploadUrl: 'http://cb2-api.azurewebsites.net/api/Events/1/Artwork
我的最终结果是:

但是,我想要此版本的图像上载:


任何帮助都将不胜感激

要解决这个问题,我必须更改插件。 我使用了版本^2.9.3 具有以下配置的插件:

TS文件:

HTML文件:


文章*
我建议使用,它允许您上载文本和图像

它可以集成在角度应用中,您可以阅读这里的说明


您可以使用

更改所需的任何配置嗨,我也遇到了同样的问题,只是我使用的是ckeditor4。我只是想看看你是否找到了解决办法嘿,我回答了问题。新插件解决了我的问题!您能告诉我们您用于该问题的解决方案url或插件吗?我在回答中添加了我使用的解决方案。我使用了以下插件:在froala中是否为angular定义了任何用于图像上载的配置对象?为什么要将froala插件用于CKEditor?他们两个都不一样,对吧?是的,他们是。我尝试使用CKEditor,但无法使其在我的环境中运行。所以,我改用了Froala插件