我正在使用Angular 6和Angular Material.更新到最新版本后,控制台在开发中抛出此错误.在生产上它正在发挥作用
Cannot read property 'ngMetadataName' of undefined
它发生在我试图通过服务打开材料对话框时(没有服务他们工作正常).我认为它与注射剂有关,但我不确定.
版本:cli:6.1.5,核心:6.1.4,材料:6.4.6
这是日志堆栈:
CustomDialogComponent_Host.ngfactory.js? [sm]:1 ERROR TypeError: Cannot read property 'ngMetadataName' of undefined
at injectArgs (core.js:1418)
at core.js:1491
at _callFactory (core.js:8438)
at _createProviderInstance (core.js:8396)
at resolveNgModuleDep (core.js:8371)
at NgModuleRef_.push../node_modules/@angular/core/fesm5/core.js.NgModuleRef_.get (core.js:9064)
at PortalInjector.push../node_modules/@angular/cdk/esm5/portal.es5.js.PortalInjector.get (portal.es5.js:732)
at resolveDep (core.js:9419)
at createClass (core.js:9309)
at createDirectiveInstance (core.js:9186)
Run Code Online (Sandbox Code Playgroud)
任何帮助将不胜感激.
服务中的对话框,其中抛出错误:
@Injectable({
providedIn: 'root'
})
export class customService {
constructor(private store: Store<RootState>, private dialog: MatDialog) {}
const dialogRef = this.dialog.open(customDialogComponent, {
width: '300px',
data: {
loading: false, …
Run Code Online (Sandbox Code Playgroud) 我正在进行一个角度项目,并决定使用样板.这是样板的链接:https://github.com/jakemmarsh/angularjs-gulp-browserify-boilerplate
我面临的问题是我无法添加任何新的模块.
例如,我想通过npm添加ngCart.我已经安装了它,但代码中无法访问它.
`import angular from 'angular';
// angular modules
import constants from './constants';
import onConfig from './on_config';
import onRun from './on_run';
import 'angular-ui-router';
import 'ngCart'; //this doesn't import it
import './templates';
import './filters';
import './controllers';
import './services';
import './directives';
// create and bootstrap application
const requires = [
'ui.router',
'ngCart',
'templates',
'app.filters',
'app.controllers',
'app.services',
'app.directives'
];
// mount on window for testing
window.app = angular.module('app', requires);
angular.module('app').constant('AppSettings', constants);
angular.module('app').config(onConfig);
angular.module('app').run(onRun);
angular.bootstrap(document, ['app'], {
strictDi: true
}); …
Run Code Online (Sandbox Code Playgroud) 我想使用 vscode 扩展程序(Chrome 调试器),但是无论我尝试什么,我都无法摆脱“断点设置但尚未绑定”。
一切都在运行,调试器控制台显示所有控制台日志消息,但我可以达到调试点。
这是我的launch.json
{
"type": "chrome",
"request": "launch",
"name": "Launch Chrome against localhost",
"url": "http://localhost",
"webRoot": "${workspaceFolder}/client/",
"sourceMaps": true,
"sourceMapPathOverrides": {
"webpack:/*": "${webRoot}/*"
}
}
Run Code Online (Sandbox Code Playgroud)
我正在使用 Angular 并且它在 Docker 中运行。任何帮助将不胜感激。
我在使用npm install时遇到了一些麻烦.
npm install package-name
是完美的工作,但当我package.json
手动添加一个新的依赖项(通过拉通过git)然后尝试npm install
只,它返回
up to date in 4.2 sec
Run Code Online (Sandbox Code Playgroud)
并且不安装包.
仅供参考:我git
用来拉package.json
文件.所以包名中没有任何问题.当我拉动并尝试npm install
仅安装它时它只是不起作用.
我的package.json是:
{
"name": "ap",
"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/common": "^4.0.0",
"@angular/compiler": "^4.0.0",
"@angular/core": "^4.0.0",
"@angular/forms": "^4.0.0",
"@angular/http": "^4.0.0",
"@angular/platform-browser": "^4.0.0",
"@angular/platform-browser-dynamic": "^4.0.0",
"@angular/platform-server": "^4.1.3",
"@angular/router": "^4.0.0",
"@ng-bootstrap/ng-bootstrap": "^1.0.0-alpha.26",
"@ngx-translate/core": "^6.0.1", …
Run Code Online (Sandbox Code Playgroud) 我有一个通过ng-repeat生成的列表.我有像这样的HTML
<ul class="my-list">
<li>List Item</li>
<li>List Item</li>
<li>List Item</li>
<li>List Item</li>
<li>List Item</li>
<li>List Item</li>
<li>List Item</li>
<li>List Item</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
我想使用angular添加一类.last-itmes到最后3个列表项.我怎样才能做到这一点?