小编Dan*_*Dan的帖子

何时在Angular2打字稿中创建构造函数?

以下是Angular 2文档中的一些示例构造函数:

export class AppComponent implements OnInit {
    title = 'Tour of heroes';
    heroes: Hero[];
    selectedHero: Hero;

    constructor(private heroService: HeroService) { }

    getHeroes() {
        this.HeroService.getHeroes().then(heroes => this.heroes = heroes);
    }
}
Run Code Online (Sandbox Code Playgroud)

和...

class Car {
    constructor(engine, tires, doors){
        this.engine = engine;
        this.tires = tires;
        this.doors = doors;
    }
}
Run Code Online (Sandbox Code Playgroud)

我不明白为什么以及何时创建一个constructor()角度2 /打字稿(我已经阅读了官方文档,他们为依赖注入和服务创建了一个构造函数).

typescript angular

22
推荐指数
2
解决办法
4万
查看次数

嵌入可编辑的Google文档电子表格,不带标题和工具栏

我需要在网页上嵌入Google文档电子表格,但它必须只是可编辑的单元格,而顶部没有Google导航和工具栏.

我无法找到用于在任何地方嵌入Google文档的查询字符串变量的引用,但似乎删除工具栏等的唯一方法是将"output = html"添加到查询字符串中.但是,这似乎是将它从可编辑的电子表格转换为不可编辑的电子表格,这就是问题所在.

任何人都可以建议如何操作下面的URL来生成只有单元格可见的可编辑文档(没有工具栏)?

https://docs.google.com/spreadsheet/ccc?key=0AngcQK0IFROwdHZySkUwd0JtY0N6Zk5RaTAyZDFVekE&widget=true

请注意,此URL不起作用 - 这只是一个示例.

谢谢!

embed google-docs google-sheets

21
推荐指数
3
解决办法
3万
查看次数

通过Graph API更新Facebook状态更新

我正在编写一个使用Graph API 的简单Facebook 状态更新 Web应用程序.除了我想在状态消息中包含换行符时,它运行良好.我尝试添加一个简单的HTML
标记,但这只是呈现为文本.

任何人都知道这是否可行,若然,怎么样?

facebook facebook-graph-api

19
推荐指数
7
解决办法
3万
查看次数

Angular2 Routing - 在路由更改时保持组件的状态

我有一个应用程序,路径后面的视图,我需要能够从路由更改时的点继续,但在返回后,组件处于其初始状态.

有没有办法如何保持组件的状态?

angular2-routing angular

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

localStorage.setItem不会持久刷新

我正在尝试使用HTML5本地存储来执行一个简单的setItem和getItem.它似乎没有工作.这有效:

$(document).ready(function () {
  localStorage.setItem('keyA', 'valueA');
  var testA = localStorage.getItem('keyA');
  alert(testA);
});
Run Code Online (Sandbox Code Playgroud)

它输出一个警告框,上面写着'valueA'.但是当我注释掉第2行(设置项目值)并刷新页面时,它只是警告"空".

为什么价值不持久?就像它实际上根本没有存储一样.

浏览器是Firefox 6,所以没问题.可以在jquery document.ready中调用它吗?我用谷歌搜索但却看不到任何相关内容.

如果有人能让我超过这个最初的障碍,我将非常感激,谢谢!

javascript local-storage

10
推荐指数
1
解决办法
8171
查看次数

如何使用Chrome开发者工具保持CSS更改

我正在尝试调试下拉菜单.我还没有访问该网站,所以我试图通过谷歌Chrome开发者工具找到一个解决方案,我可以测试,然后在我访问时应用到该网站.它只是CSS,也许是一些Javascript更改.

问题是我想通过开发工具应用一些新的CSS样式规则,但是在刷新网页时仍然存在这些规则.有没有办法可以应用样式并让它们坚持下去?我查看了资源部分,哪种建议我可以做这样的事情(可能通过添加本地样式表作为资源?),但我无法弄清楚如何做到这一点.

任何人都可以指出我在正确的方向吗?

非常感谢大家......

javascript css google-chrome-devtools

10
推荐指数
4
解决办法
1万
查看次数

使用AngularJs的可排序表列

我正在尝试对从JSON源填充的数据表进行排序.我的代码如下:

HTML:

<div ng-app="myApp">
    <div ng-controller="PurchasesCtrl">
        <table cellspacing="0">
            <tr class="first">
                <th class="first" ng:click="changeSorting(purchases.date)">Date</th>
                <th ng:click="changeSorting(purchases.text)">Description</th>
                <th ng:click="changeSorting(purchases.price)">Amount</th>
                <th ng:click="changeSorting(purchases.availability)">Status</th>
            </tr>
            <tr ng-repeat="purchase in purchases.data">
                <td class="first">{{purchase.date}}</td>
                <td>{{purchase.text}}</td>
                <td>{{purchase.price}}</td>
                <td>{{purchase.availability}}</td>
            </tr>
        </table>
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

JS:

var myApp = angular.module("myApp",[]);

myApp.factory("Purchases", function(){
    var Purchases = {};

    Purchases.data = [
        {
            date: "10/05/2012",
            text: "1 Lorem ipsum dolor sit amet ipsum dolor",
            price: "£123.45",
            availability: "1 Available until 10th Dec 2013"
        },
        {
            date: "24/05/2012",
            text: "2 Lorem ipsum dolor sit amet ipsum …
Run Code Online (Sandbox Code Playgroud)

angularjs angularjs-ng-repeat

9
推荐指数
3
解决办法
3万
查看次数

Angular2在路由器插座外部获取路由器参数

我有一个仪表板应用程序,它包含一个树视图组件(列出各种内容节点)和一个仪表板编辑组件,它根据树的哪个分支选择呈现一些可编辑的内容.

例如,树是这样的:

- Football
- - Premier League
- - - Arsenal
- - - Chelsea
- - - ...etc
- - Championship
- - - Derby
- - - ...etc
Run Code Online (Sandbox Code Playgroud)

单击树中的"Arsenal",它会在页面上的可编辑面板中为该团队呈现一些内容.

呈现子组件的组件如下所示:

@Component({
    selector: 'my-dashboard',
    template: `
        <div class="tree-panel-container">
            <div class="tree-panel-content">
                <content-tree [startNodeId]="startNodeIdContent"></content-tree>
            </div>
        </div>
        <router-outlet></router-outlet>
    `,
    directives: [
        ContentTreeComponent, 
        ContentDashboardComponent, 
        RouterOutlet
    ],
    providers: [
        HTTP_PROVIDERS
    ]
})
Run Code Online (Sandbox Code Playgroud)

可编辑内容以一定的形式呈现,router-outlet使得每个可编辑的内容具有其自己的不同URL,例如example.com/content/edit/123,其中123是阿森纳内容的id.

一切正常.

但是,我想要做的是能够访问组件中的idroute参数content-tree.目前,我很确定我在该组件中的代码应该有效:

import {Component, Input, OnInit}   from '@angular/core'; …
Run Code Online (Sandbox Code Playgroud)

typescript angular2-routing angular

9
推荐指数
3
解决办法
6886
查看次数

通过Angular 2中的服务获取并更新字符串

我试图通过一个非常简单的应用程序来更好地理解服务,该应用程序获取并更新服务中的字符串值并将其显示在组件中.

这是服务:

import {Injectable} from 'angular2/core';

@Injectable()
export class SharedService {
  dataString: string;

  insertData(data) {
    this.dataString = data
  }
}
Run Code Online (Sandbox Code Playgroud)

这是主要的'app'组件:

import {Component}      from 'angular2/core';
import {OtherComponent} from './other';
import {SharedService}  from'./shared.service';

@Component({
  selector: 'my-app',
  providers: [SharedService],
  directives: [OtherComponent],
  template: `
    <input type="text" #someValue>
    <button (click)="setSharedValue(someValue.value)">Change value in shared service</button>
    <br><br>
    <other></other>
  `
})
export class AppComponent { 
  constructor(private _sharedService: SharedService){}

  setSharedValue(value){
    this._sharedService.insertData(value);
  }

}
Run Code Online (Sandbox Code Playgroud)

......这是"其他"组件:

import {Component, OnInit} from 'angular2/core';
import {SharedService} from './shared.service';

@Component({
  selector : "other",
  template …
Run Code Online (Sandbox Code Playgroud)

angular2-services angular

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

如何解决 Ionic Vue 方法中嵌套范围内定义“this”时的 ESLint 错误

我有一个 Ionic Vue 应用程序,它使用该slides组件在每次转换时修改反应属​​性。相关代码是这样的:

<script lang="ts">
import { IonPage, IonContent, IonSlides, IonSlide,} from '@ionic/vue'

export default {
  name: 'Splash',
  components: { IonPage, IonContent, IonSlides, IonSlide,},
  data() {
    return {
      contentClass: 'bg-gradient-1',
    }
  },
  setup() {
    const slideOpts = {
      autoplay: {
        delay: 4000,
      },
    }    
    return { slideOpts }
  },
  methods: {
    slideChange({ target }) {
      const vm = this
      target.getActiveIndex().then((i) => {
        vm.contentClass = 'bg-gradient-' + i
      })
    },
  },
}
</script>
Run Code Online (Sandbox Code Playgroud)

这会产生以下错误:

Unexpected aliasing of 'this' …

typescript eslint ionic-framework vue.js ionic5

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