小编JSm*_*ith的帖子

Angular2:如果img src无效,则显示占位符图像

目标:使用动态源加载图像.如果未找到图像,则改为加载占位符图像.

这应该说明我正在尝试做什么,但我不知道如何根据第一个img src是否有效来有条件地设置validImage.

<img *ngif="validImage" class="thumbnail-image" src="./app/assets/images/{{image.ID}}.jpg" alt="...">
<img *ngif="!validImage" class="thumbnail-image" src="./app/assets/images/placeholder.jpg" alt="...">
Run Code Online (Sandbox Code Playgroud)

如果src ="./ app/assets/images/{{image.ID}},则validImage应为true.jpg"返回图像.否则它将返回false并且只显示第二个img标记.

有明显的工作方法,比如存储所有有效图像源的列表,但我认为有更好的方法来实现这一点.

关于在Angular2中实现此方法的最佳方法的任何建议将不胜感激.

javascript angular

36
推荐指数
4
解决办法
5万
查看次数

升级Angular和项目后找不到编译器ngcc模块

我刚刚将Angular cli和我的一个项目从7.0.7升级到7.1.0。

我关注了这篇文章以及@Francesco Borzi的回答。

现在我尝试使用以下命令运行我的项目:

ng serve --proxy-config proxy.conf.json
Run Code Online (Sandbox Code Playgroud)

并收到此消息

找不到模块'@ angular / compiler-cli / ngcc'错误:找不到

模块'@ angular / compiler-cli / ngcc'

at Function.Module._resolveFilename (internal/modules/cjs/loader.js:649:15)

at Function.Module._load (internal/modules/cjs/loader.js:575:25)

at Module.require (internal/modules/cjs/loader.js:705:19)

at require (internal/modules/cjs/helpers.js:14:16)

at Object.<anonymous> (/Users/path/myproject/node_modules/@ngtools/webpack/src/ngcc_processor.js:10:16)

at Module._compile (internal/modules/cjs/loader.js:799:30)

at Object.Module._extensions..js (internal/modules/cjs/loader.js:810:10)

at Module.load (internal/modules/cjs/loader.js:666:32)

at tryModuleLoad (internal/modules/cjs/loader.js:606:12)

at Function.Module._load (internal/modules/cjs/loader.js:598:3)

at Module.require (internal/modules/cjs/loader.js:705:19)

at require (internal/modules/cjs/helpers.js:14:16)

at Object.<anonymous> (/Users/path/myproject/node_modules/@ngtools/webpack/src/angular_compiler_plugin.js:23:26)

at Module._compile (internal/modules/cjs/loader.js:799:30)

at Object.Module._extensions..js (internal/modules/cjs/loader.js:810:10)

at Module.load (internal/modules/cjs/loader.js:666:32)
Run Code Online (Sandbox Code Playgroud)

这是我的 package.json

{
  "name": "myproject",
  "version": …
Run Code Online (Sandbox Code Playgroud)

npm angular-cli angular

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

您是否为 OAuth 2.0 请求生成后端或前端状态参数?

我一直在网上寻找答案,但找不到明确的答案。由于我不太了解 CSRF 攻击,并且stateOAuth 2.0 中的参数是为了避免这种攻击而制作的,我只是想知道是否state需要在客户端生成参数并将值放在本地存储或后端服务器上,然后将其存储到一个会话变量,然后我将其返回到客户端以创建我的 URL。第一个解决方案似乎是最好的,但它安全吗?

任何帮助是极大的赞赏。

oauth-2.0 openid-connect google-signin

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

NameError:名称“drive_service”未定义 Google API

我想将照片上传到谷歌驱动器。我可以读取驱动器上的文件。但是当我为上传部分添加广告时,从第 49 行到第 55 行,我不断收到相同的错误。我不断收到错误“NameError: name 'drive_service' is not defined” 我已经导入了每个库,但仍然无法工作 这是我环顾四周的代码,但还没有看到解释它的帖子。

from __future__ import print_function
from googleapiclient.discovery import build
from httplib2 import Http
from oauth2client import file, client, tools
from apiclient.http import MediaFileUpload



# If modifying these scopes, delete the file token.json.
SCOPES = 'https://www.googleapis.com/auth/drive'

def main():
    """Shows basic usage of the Drive v3 API.
    Prints the names and ids of the first 10 files the user has access to."""
    # The file token.json stores the user's access and …
Run Code Online (Sandbox Code Playgroud)

python google-api-client

5
推荐指数
3
解决办法
9833
查看次数

如何删除Eclipse中的maven依赖jar

我对 Maven 非常陌生,刚刚将我的应用程序引擎项目转换为 Maven 项目。我在pom.xml文件中添加了依赖项以消除错误。但现在我进入了我的代码

HttpServletRequest 类型的方法 getPart(String) 未定义

因此,在对 Stack Overflow 进行了一些研究之后,我似乎需要一个单独的更新包servlet-api才能使其正常工作。

显然,我可能与我的 Maven 依赖项中的旧版本有冲突,但我从未将其添加到 中,pom.xml现在我被这个 jar 困住了,不知道为什么导入它以及如何删除它。

这是我的pom.xml

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>my-project</groupId>
  <artifactId>my-project</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>war</packaging>
  <build>
    <plugins>
      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.8.0</version>
        <configuration>
          <source>1.8</source>
          <target>1.8</target>
        </configuration>
      </plugin>
      <plugin>
        <artifactId>maven-war-plugin</artifactId>
        <version>3.2.1</version>
            <configuration>
                 <webResources>
                    <resource>
                        <directory>${basedir}/src/main/webapp/WEB-INF</directory>
                        <filtering>true</filtering>
                        <targetPath>WEB-INF</targetPath>
                    </resource>
                </webResources>
            </configuration>
      </plugin>
      <plugin>
        <groupId>com.google.cloud.tools</groupId>
        <artifactId>appengine-maven-plugin</artifactId>
         <version>1.3.1</version>
            <configuration>
                 <deploy.promote>true</deploy.promote>
                <deploy.stopPreviousVersion>true</deploy.stopPreviousVersion>
            </configuration>
      </plugin>
    </plugins>
  </build>
  <dependencies>
    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>javax.servlet-api</artifactId>
        <version>3.1.0</version>
    </dependency>
    <dependency>
        <groupId>com.mailjet</groupId> …
Run Code Online (Sandbox Code Playgroud)

java eclipse google-app-engine maven

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

未记录的 Sheet API 限制问题

我已经看过人们遇到类似问题的帖子,但找不到明确的答案。

我尝试使用以下代码行检索 264735 个插槽的二维数组:

  var optionalArguments = {majorDimension: "ROWS",
                     valueRenderOption: "FORMULA",
  };
  var sourceValuesObject = Sheets.Spreadsheets.Values.get(spreadsheetId, rangeA1Notation, optionalArguments)
Run Code Online (Sandbox Code Playgroud)

但这是我得到的:

响应代码:413。消息:响应太大。

这看起来很奇怪,因为我看不到这种限制写在任何地方,加上如果 300000 个或更少的单元格导致 API 错误,用户如何获取大量数据。

我尝试过拆分请求并且它有效,但这使我的代码变得更加复杂且速度更慢,而且在尝试将值更新回工作表范围时我得到空响应。

我指向正确的方向吗?这是正常的吗?有解决方法吗?

编辑: 这是一个示例电子表格

首先,我尝试使用循环Sheets.Spreadsheets.Values.get 内部来获取分割范围for,并且它有效。

做同样的事情batchGet会给我同样的错误,所以我想单元格内的数据太大了。

javascript google-apps-script http-status-code-413 google-sheets-api

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

使用 Angular 向 Fabric.js 对象添加自定义属性

正如问题中所述,我正在尝试向 Fabric.js 对象添加自定义属性。

我试过了

rect.customAttribute = value
Run Code Online (Sandbox Code Playgroud)

但这使编译陷入困境,我收到以下错误:

对象文字只能指定已知属性,并且类型“IRectOptions”中不存在“customAttribute”。

我也尝试过该功能toObject(),但无法找到我的属性并进行设置。此外,在使用toObject()然后尝试使用之前的方法设置我添加的属性之后,我在逻辑上得到了相同的错误。

let rect = new fabric.Rect(
    {
        left:0,
        top: 0,
        width: 60
        height:60,
        fill: 'orange',
        selectable: true,
        evented: true,
        name: 'rect',
        cornerColor:'red',
        cornerSize:5,
        borderColor:'red',
        borderScaleFactor: 5,
        noScaleCache:false,
        customAttribute:false
    })
rect.toObject(['customAttribute'])
Run Code Online (Sandbox Code Playgroud)

fabricjs typescript angular

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