3

我有这个使用的 Angular 项目,ngx-quill我想向它添加第三方模块quill-blot-formatter

我已@types/quill作为开发依赖项安装以消除 TS linter 错误并配置tsconfig.json为包含"esModuleInterop": true"allowSyntheticDefaultImports": true.

我还添加quill.jsangular.json以下内容:

"scripts": [
   "./node_modules/quill/dist/quill.min.js"
]

我正在尝试在其中注册模块,app.module.ts但在浏览器控制台上出现以下错误。

quill.js:1122 Uncaught TypeError: Cannot read property 'register' of undefined

这是我的模块注册码:

import Quill from 'quill';
import { BlotFormatter } from 'quill-blot-formatter';

Quill.register('modules/blotFormatter', BlotFormatter);

我尝试过Quill以各种方式导入(* as Quill, * as QuillNamespace),但没有任何效果。

任何帮助,将不胜感激。

4

3 回答 3

2

我通过改变这个解决了这个问题:

import { BlotFormatter } from 'quill-blot-formatter';

对此:

import BlotFormatter from 'quill-blot-formatter';

显然我没有正确阅读文档:)

于 2020-01-30T08:12:27.687 回答
0

尝试像这样导入 Quill:

const Quill = require('quill')
于 2020-02-11T04:11:57.337 回答
0

从文档Github

// 从索引中导出很多有用的模块
import BlotFormatter from 'quill-blot-formatter';

// 或者,从每个单独的模块
import BlotFormatter from 'quill-blot-formatter/dist/BlotFormatter';

单个模块导入帮助我解决了这个问题
Issue: (Uncaught TypeError: Cannot read property 'register' of undefined).

于 2020-09-30T03:42:28.380 回答