小编ale*_*xi2的帖子

如何使用object标签为base64渲染pdf设置文件名?

那么我使用以下代码来呈现从webservice作为base64字符串返回的PDF.

<html>
  <object data="data:application/pdf;base64,{!pdfStampingResponse.pdfBase64}" type="application/pdf" width="100%" class="internal">
    <param name="view" value="fitH" />            
  </object>
</html>
Run Code Online (Sandbox Code Playgroud)

这很好但我想在用户尝试保存文件时设置下载文件名.不知何故,我无法找到一个有效的解决方案.知道怎么做吗?

html pdf html5 base64

21
推荐指数
1
解决办法
9544
查看次数

使用Lambda Node从S3上的文件创建S3上的zip文件

我需要创建一个Zip文件,其中包含位于我的s3存储桶中的一系列文件(视频和图像).

目前使用我的代码的问题是我很快就达到了Lambda的内存限制.

async.eachLimit(files, 10, function(file, next) {
    var params = {
        Bucket: bucket, // bucket name
        Key: file.key
    };
    s3.getObject(params, function(err, data) {
        if (err) {
            console.log('file', file.key);
            console.log('get image files err',err, err.stack); // an error occurred
        } else {
            console.log('file', file.key);
            zip.file(file.key, data.Body);
            next();
        }
    });
}, 
function(err) {
    if (err) {
        console.log('err', err);
    } else {
        console.log('zip', zip);
        content = zip.generateNodeStream({
            type: 'nodebuffer',
            streamFiles:true
        });
        var params = {
            Bucket: bucket, // name of dest bucket
            Key: 'zipped/images.zip', …
Run Code Online (Sandbox Code Playgroud)

amazon-s3 amazon-web-services node.js aws-lambda

17
推荐指数
3
解决办法
9814
查看次数

Webpack无法加载我的npm模块

我遇到了麻烦,我刚刚npm卸载react-bootstrap,然后npm install react-bootstrap,webpack再也无法加载这个模块了.

我像这样启动webpack:

/var/www/cloud/node_modules/.bin/webpack --config webpack.config.js --watch --display-error-details

这里是错误,它只是无法在react-bootstrap中找到package.json:

ERROR in ./core/static/core/js/modules/dashboard/admin/Customer.js
Module not found: Error: Cannot resolve module 'react-bootstrap' in /var/www/cloud/core/static/core/js/modules/dashboard/admin
resolve module react-bootstrap in /var/www/cloud/core/static/core/js/modules/dashboard/admin
  looking for modules in /var/www/cloud/node_modules
    resolve 'file' react-bootstrap in /var/www/cloud/node_modules
      resolve file
        /var/www/cloud/node_modules/react-bootstrap is not a file
        /var/www/cloud/node_modules/react-bootstrap.js doesn't exist
        /var/www/cloud/node_modules/react-bootstrap.jsx doesn't exist
    resolve 'file' or 'directory' /var/www/cloud/node_modules/react-bootstrap
      resolve file
        /var/www/cloud/node_modules/react-bootstrap is not a file
        /var/www/cloud/node_modules/react-bootstrap.js doesn't exist
        /var/www/cloud/node_modules/react-bootstrap.jsx doesn't exist
      resolve directory
        use lib/index.js from package.json
          resolve 'file' or 'directory' lib/index.js …
Run Code Online (Sandbox Code Playgroud)

commonjs node.js npm webpack react-bootstrap

12
推荐指数
1
解决办法
7094
查看次数

在 Node+Express 中,如何为各个路由设置 CORS?

我正在使用express-cors npm 包,但任何方式都可以:

我在公共路线上尝试过这个:

// @ /routes/index.js
var cors = require('express-cors');
var express = require('express');
var router = express.Router();

// Set cross-origin rules
router.use(cors({
    allowedOrigins: [
        '*'
    ]
}));

// GET home page
router.get('/', function(req, res, next) {
    res.render('index', { title: 'tol-node-public' });
});

module.exports = router;
Run Code Online (Sandbox Code Playgroud)

我还尝试了私人路线以允许从我的网站访问:

// Set cross-origin rules
router.use(cors({
     allowedOrigins: [
         'https://*.mysite.*'
     ]
}));
Run Code Online (Sandbox Code Playgroud)

但是在我的 Ajax 调用中:

$.ajax({
    url: 'https://api.mysite.com/',
    dataType: 'html',
    type: 'GET',
    success: function (res) {
        console.log( "NODE SERVER STATUS: " + JSON.stringify(res) ); …
Run Code Online (Sandbox Code Playgroud)

javascript node.js express

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

javascript 对象中的访问器和普通函数有什么区别?

除了调用它们的方式之外,javascript 对象中这两个函数(一个是访问器属性 getter)之间的具体区别是什么?

var o = {
  foo: function() { return "bar"; },
  get foo2() { return "bar2"; }
}
Run Code Online (Sandbox Code Playgroud)

javascript function accessor

5
推荐指数
1
解决办法
1093
查看次数

动态添加javascript以立即执行

我使用 DOM 动态地将脚本添加到页面。

  1. 如果我添加脚本文本(例如script.text = "...";),它会立即运行。

  2. 但是,如果我添加外部脚本(例如script.src = "...";),它将在我的脚本完成后运行。

所以在下面的例子中我会得到

“0 1 2”

“3 3 3”

分别。

( 1.js 包含相同的字符串 - "document.body.innerHTML += i")

<body>
  <script>
    for (i = 0; i < 3; i++) {
      var script = document.createElement('script');
      script.src = "1.js";
      //  script.text = "document.body.innerHTML += i";
      document.body.append(script);
    };
  </script>
</body>
Run Code Online (Sandbox Code Playgroud)

我不明白为什么它会这样工作,以及如何在添加后立即运行 1.js?

javascript dom

5
推荐指数
1
解决办法
929
查看次数

当我们在ReactJS中使用this.setState()时会发生什么?

当在React中使用this.setState()时状态实际发生变化时,我感到很困惑.这是我的JSX:

var Hello = React.createClass({
  getInitialState: function () {
    return {
      iterator: 0
    }
  },
  handleClick: function () {
    console.log(this.state.iterator);
    this.setState({
      iterator: this.state.iterator + 1
    })
    console.log(this.state.iterator)
  },
  render: function () {
    return <button onClick={this.handleClick}>{this.state.iterator}</button>;
  }
});

ReactDOM.render(
  <Hello name="World"/>,
  document.getElementById('container')
);
Run Code Online (Sandbox Code Playgroud)

如您所见,我在调用this.setState()之前和之后记录迭代器的状态.但无论如何,它都记录了相同的数字.在我第一次单击按钮之后,我希望分别记录0和1,但它们都记录0和0.而在第二次点击时,它们记录1和1.那么状态实际上是什么时候发生变化以及究竟发生了什么这里?

reactjs

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