小编Bog*_*lan的帖子

带有 Webpack 的 Typescript 中的环境变量

我无法使用 Webpack 的 DefinePlugin 在 Typescript 中声明全局变量。我希望得到一些关于我做错了什么的意见。

我在我的中创建了一个环境变量.bash_profile:

export API_KEY_GOOGLE_MAPS=xxxxxxxxxxxxxxxx
Run Code Online (Sandbox Code Playgroud)

在我的 webpack.config.js 中,我有以下几行:

...
plugins: [
  new webpack.DefinePlugin({
    API_KEY_GOOGLE_MAPS: JSON.stringify(process.env.API_KEY_GOOGLE_MAPS),
  }),
],
...
Run Code Online (Sandbox Code Playgroud)

在内部index.tsx(我正在使用 React),我执行以下操作:

declare var API_KEY_GOOGLE_MAPS: string;

console.log(API_KEY_GOOGLE_MAPS)
Run Code Online (Sandbox Code Playgroud)

这会在包含以下内容的行中产生以下错误console.log:

ReferenceError: API_KEY_GOOGLE_MAPS is not defined
Run Code Online (Sandbox Code Playgroud)

有人有线索吗?

javascript typescript reactjs webpack

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

Postgres - 如何将更改从开发数据库部署到实时版本

如果这是一个简单的问题,我深表歉意 - 仅靠搜索很难找到答案。

将开发数据库中的更改部署到实时版本的良好工作流程是什么?

我的应用程序的数据库是在 Heroku 上运行的 Postgres。它会定期更新用户内容。我有一个在本地运行的开发版本(带有过时的内容)。

我在本地数据库中创建了一个新表,我想实时部署它。如何在不复制实时服务器上的所有工作且不克隆本地副本的情况下执行此操作?

非常感谢你的帮助!

database deployment postgresql heroku

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

ActiveStorage - 上传后获取图像尺寸

我使用Rails + ActiveStorage 上传图片文件,上传后想将宽高保存在数据库中。但是,我无法在任何地方找到任何此类示例。

这是我从各种 API 文档中拼凑出来的,但最终还是出现了这个错误:private method 'open' called for #<String:0x00007f9480610118>. 更换blob用image.file的原因轨登录“跳绳图像分析,因为ImageMagick的不支持文件”(https://github.com/rails/rails/blob/master/activestorage/lib/active_storage/analyzer/image_analyzer.rb#L39) .

代码:

class Image < ApplicationRecord
  after_commit { |image| set_dimensions image }

  has_one_attached :file

  def set_dimensions(image)
    if (image.file.attached?)
      blob = image.file.download

      # error: private method `open' called for #<String:0x00007f9480610118>
      meta = ActiveStorage::Analyzer::ImageAnalyzer.new(blob).metadata
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

这种方法也有问题,因为after_commit它也被称为销毁。

TLDR:上传后是否有立即获取图像元数据的“正确”方法?

ruby-on-rails rails-activestorage

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

Vue.js-重复元素特定次数

基于该num-labels道具,我想使用Vue.js将元素重复n次。

<label-parent num-labels="4"></label-parent>
Run Code Online (Sandbox Code Playgroud)

这是我的组件:

<template>
  <div id="label-parent">
    <div v-for="idx in numLabels">
      {{idx}}
    </div>
  </div>
</template>

<script>;
export default {
  name: "LabelParent",
  props: ['numLabels'],
}
</script>
Run Code Online (Sandbox Code Playgroud)

此代码仅输出一个空div: <div id="label-parent"></div>。正确的做法是什么?

javascript vue.js

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