gpt4 book ai didi

angularjs - 如何将 qrcode-generator 导入 angular 2 应用程序?

转载 作者:搜寻专家 更新时间:2023-10-30 21:01:16 24 4
gpt4 key购买 nike

我正在尝试使用 qrcode-generator在我的应用程序中,但我的设置没有成功,即使它在 plunker 中工作,在我的应用程序中,我使用的是 angular-cli 和 angular 2.rc-1。
重现步骤:

ng new newAppName
cd newAppName
ng serve

那么就可以了。

npm i qrcode-generator // (note this is missing the svg support).
ng serve // still work

然后更改2个文件中的配置。 Angular -cli-build.js:

var Angular2App = require('angular-cli/lib/broccoli/angular2-app');
module.exports = function(defaults) {
return new Angular2App(defaults, {
vendorNpmFiles: [
'systemjs/dist/system-polyfills.js',
'systemjs/dist/system.src.js',
'zone.js/dist/**/*.+(js|js.map)',
'es6-shim/es6-shim.js',
'reflect-metadata/**/*.+(js|js.map)',
'rxjs/**/*.+(js|js.map)',
'qrcode-generator/**/*.+(js|js.map)',
'@angular/**/*.+(js|js.map)'
]
});
};

和系统配置.ts:

/**********************************************************************************
* User Configuration.
*********************************************************************************/
/** Map relative paths to URLs. */
const map: any = {
'qrcode-generator': 'vendor/qrcode-generator'
};
const packages: any = {
'vendor/qrcode-generator': {
main: 'qrcode',
defaultExtension: 'js'
}
};
// ... the rest is the same

编辑 new-app-name.component.ts 并像这样在其中导入 qrcode-geenerator

// vscode underline the qrcode-generator string and complai about not finding it
import * as qrcode from 'qrcode-generator';

然后 ng serve 仍然运行错误并显示此消息:

/path/to/project/newAppName/tmp/broccoli_type_script_compiler-input_base_path-jscpZEq5.tmp/0/src/app/new-app-name.component.ts (3, 25): Cannot find module 'qrcode-generator'.

我尝试通过将其添加到 typings.json 文件来为其安装类型:

"globalDependencies": {
"qrcode-generator": "registry:dt/qrcode-generator#0.0.0+20160412152159"
}

然后运行:

typings i

安装成功,但还是一样的错误。angular-cli 版本:

angular-cli: 1.0.0-beta.5
node: 6.2.0
os: linux x64

我是不是漏掉了什么?
我还缺少其他配置吗?

最佳答案

多亏了@JavascriptMick,我终于能够导入这个了来自 angular-cli's gitter我做了以下操作,首先将格式设置为全局格式:

'vendor/qrcode-generator': {
format: 'global',
main: 'qrcode.js'
}

然后在导入时这样做:

import 'qrcode-generator';
declare let qrcode;

希望这对您有所帮助。

关于angularjs - 如何将 qrcode-generator 导入 angular 2 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37481589/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com