小编Ami*_*mit的帖子

扩展HTMLElement:使用webpack时构造函数失败

我将以下TypeScript程序转换为ES5:

档案1:

class BaseElement extends HTMLElement {
    constructor() {
        super();
    }
}
Run Code Online (Sandbox Code Playgroud)

文件2:

import {BaseElement} from './BaseElement';

class MyElement extends BaseElement {
    constructor() {
        super();
    }
}

var el = new MyElement();
Run Code Online (Sandbox Code Playgroud)

将所有内容手动放入文件中,代码工作正常并在浏览器中执行,HTMLElement构造没有问题.但是,只要我通过webpack打包它,我收到以下错误消息:

Uncaught TypeError: Failed to construct 'HTMLElement': Please use the 'new' operator, this DOM object constructor cannot be called as a function.
Run Code Online (Sandbox Code Playgroud)

没有webpack,构造了以下JS代码:

var __extends = (this && this.__extends) || function (d, b) {
    for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];
    function __() { this.constructor …
Run Code Online (Sandbox Code Playgroud)

javascript web-component typescript webpack

19
推荐指数
2
解决办法
8421
查看次数

VS代码键绑定是否可用于IntelliJ Idea?

我已经习惯了VS代码快捷方式,有什么方法可以导入IntelliJ Idea的vscode快捷方式.

keyboard-shortcuts intellij-idea visual-studio-code

18
推荐指数
2
解决办法
6080
查看次数

如何在变量更改后重新呈现指令?

我正在使用星级评定指令.但是在从HTTP加载数据之前加载模板.所以我想在HTTP请求成功后重新加载指令模板.

HTML

<html>

<head>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.5/angular.min.js" type="text/javascript"></script>
</head><body>


<div ng-app="myapp" ng-controller="movieCtrl">

<div star-rating rating="starRating" read-only="false" max-rating="10" click="click(param)" mouse-hover="mouseHover(param)"
        mouse-leave="mouseLeave(param)"></div>
        </div></body></html>
Run Code Online (Sandbox Code Playgroud)

JS

var app = angular.module('myapp', []);
app.controller("movieCtrl", function($scope, $http) {

  $scope.starRating = 0;
  $scope.hoverRating = 0;


  $scope.mouseHover = function(param) {
    $scope.hoverRating1 = param;
  };

  $scope.mouseLeave = function(param) {

    $scope.hoverRating1 = param + '*';
  };
  //problem here
  //actual data coming via http
  //when value is changed i want to re-render below directive template
  setTimeout(function() {
    $scope.starRating = 5
  }, 1000);
}); …
Run Code Online (Sandbox Code Playgroud)

javascript angularjs

6
推荐指数
1
解决办法
2万
查看次数