标签: firebase-polymer

服务人员:如何为每个新部署构建“新”版本的网站?

问题

我在生产中的网站(使用Polymer Shop模板构建)存在问题,尽管我进行了新的和改进的部署,但该网站仍提供旧版本的代码。

我正在使用$ polymer build带有Firebase Tools $ firebase deploy命令的Polymer CLI 命令将更改推送到Firebase Hosting。部署完成后,我仅浏览网站以查看未更新的更改:

  • Chrome:我首先看到的是网站的旧版本,必须“强制刷新”才能显示更改。

  • FireFox:我首先看到该网站的旧版本,并且必须“强制刷新”以使更改出现。


以下是射门前的n':

在此处输入图片说明


服务人员工作流程?

我试图弄清楚什么是最好的工作流程。我想要进行设置,以便每次进行新部署时,整个站点都被清理干净,服务人员可以通过内部网络重置自己,我将100%确保现有用户将获得新部署的体验

无需强制刷新或使用隐身模式


我是不是该...

  • 删除服务工作者并部署没有它的新版本(不好的主意)?
  • 在Firebase控制台中创建“新项目”,然后将自定义域重新链接起来(乏味)?
  • 找到“魔术按钮”以在Firebase控制台中按下以进行重置(是否存在)?
  • 编辑sw-precache-config.js文件(不确定如何)?
  • 处理此$ polymer build以配置sw-precache(不确定如何)?
  • 某事甚至不知道 ¯\_(?)_/¯吗?

我知道问题存在于sw-precache-config.js文件中,但是我不确定这是否是我应该修复的地方

module.exports = {
  staticFileGlobs: [
    '/index.html',
    '/manifest.json',
    '/bower_components/webcomponentsjs/webcomponents-lite.min.js',
    '/images/*'
  ],
  navigateFallback: '/index.html',
  navigateFallbackWhitelist: [/^(?!.*\.html$|\/data\/).*/],
  runtimeCaching: [
    {
      urlPattern: /\/data\/images\/.*/,
      handler: 'cacheFirst',
      options: {
        cache: {
          maxEntries: …
Run Code Online (Sandbox Code Playgroud)

polymer service-worker firebase-polymer sw-precache polymer-cli

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

如何将两个Polymer的firebase-collection元素嵌入dom-repeat中?

我有一个问题是循环两个Polymers firebase-collection元素.使用我的数据库结构,我首先要检查用户有权访问哪些事件,然后从事件中获取有关该事件的信息.

这段代码的问题在于,当我循环第二个firebase-collection时,"events"上的数据绑定在所有重复上都是相同的,因此它在每个h4上都是相同的名称.

那么有没有办法在data ="{{}}"中拥有一个唯一的变量.还是有更好的方式来写出数据?

<firebase-collection data="{{userData}}" location="{{_getCorrectUrl()}}"></firebase-collection> 
<template is="dom-repeat" items="{{userData}}" as="user">
  <firebase-collection data="{{events}}" location="{{_getCorrectEventsUrl(user.__firebaseKey__)}}" ></firebase-collection> 
  <template is="dom-repeat" items="{{events}}" as="event">
    <h4>{{event.value.name}}</h4>
  </template>
</template>
Run Code Online (Sandbox Code Playgroud)

data-binding firebase polymer firebase-polymer polymer-1.0

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

许多Firebase-Elements减慢了一切

在真正的聚合物方式中,我将所有元素构建为独立组件,可以自行重复使用.我的应用程序使用Firebase数据库和firebase-element元素来显示数据,并在此处做了一项了不起的工作,但我的应用程序的元素化意味着它创建了我认为的大量Firebase实例.我应该把一个放在窗口上并在所有窗口之间分享,还是有更优雅的解决方案.

太感谢了!

firebase polymer firebase-polymer polymer-1.0

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

有没有办法监视Firebase命令行的"nodemon"之类的更改?

有没有办法让Firebase命令行简单地刷新服务器,因为我将更改应用于类似于nodemon对nodeJS的代码?我正在使用Polymer for web.

firebase nodemon firebase-hosting firebase-polymer firebase-tools

4
推荐指数
3
解决办法
950
查看次数

在Polymer元素中调用函数

我很难在聚合物元素中调用函数.我知道你需要使用this.functionName();它,它的工作原理.

但当我在这样的setTimeout中它:runSoon = setTimeout(this.runNow(), 12000);它运行时没有等待.如果我这样写:runSoon = setTimeout(function(){this.runNow()}, 12000);它给我一个错误信息:Uncaught TypeError: this.runNow is not a function.

此外,当我在Firebase中使用this.functionName时它可以工作,但是在"forEach"中,就像在这个例子中一样,它给出了我的错误Uncaught TypeError: this.myFunction is not a function:

ref.once('value', function(snapshot) {
  snapshot.forEach(function(child) {
    this.myFunction();
  });
});
Run Code Online (Sandbox Code Playgroud)

谢谢

javascript polymer firebase-polymer polymer-1.0

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

如何安装所有依赖项的Polymerfire?

我正在尝试安装和使用Polymerfire <firebase-auth>元素.但是,显然,我没有成功安装所有依赖项,例如firebase-sdk.

我尝试使用Bower命令模式来安装其他Polymer元素:

命令行
bower install --save polymerfire/firebase-auth
Run Code Online (Sandbox Code Playgroud)

但是,显然,可能没有为Bower设置Polymerfire,我收到了以下错误.

致命:远程错误:
找不到存储库.

现在,我在Polymerfire bower.json文件中列出了以下依赖项:

bower.json
...
"dependencies": {
  "polymer": "Polymer/polymer#^1.2.0",
  "firebase-sdk": "https://www.gstatic.com/firebasejs/3.0.0/firebase.js",
  "app-storage": "polymerelements/app-storage#~0.9.0"
},
...
Run Code Online (Sandbox Code Playgroud)

但我不重复,我重申,我没有,在我的项目的bower_components目录中有任何firebase-sdk目录.

请帮我解开这个并正确地将Polymerfire的所有必要依赖项(包括firebase-sdk)安装到我的Polymer项目中.

编辑

当我执行以下命令时:

命令行
bower install --save polymerfire
Run Code Online (Sandbox Code Playgroud)

似乎工作.但是,当我检查我的bower_components目录时,我仍然没有看到任何firebase-sdk子目录,我仍然得到相同的控制台错误.单击此处以查看更详细地处理此错误的另一个问题.

的console.log

firebase-app.html:94
未捕获的ReferenceError:未定义firebase

firebase polymer firebase-polymer polymer-1.0 polymerfire

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

Polymerfire - 在事件发生后创建数据

我正在使用bower bower安装firebase/polymerfire的firebase/polymerfire包

如何在触发方法后在数据库中创建一些数据?

文档标记看起来会显示和更新数据.我想,当用户注册时,创建一些供用户使用的数据.

app.signInAnonymously = function() {
        this.error = null;
        this.$.auth.signInAnonymously();
        // add default data for the user template
      };
Run Code Online (Sandbox Code Playgroud)

我如何使用默认的set()或推送方法,如普通的SDK?

我怎样才能在JavaScript的事件中调用它?

尝试将路径绑定到我的文档时

<firebase-document
 path="/"
 data="{{firebaseData}}">
</firebase-document>


 {{firebaseData}}
Run Code Online (Sandbox Code Playgroud)

数据不会显示,但我有身份验证工作.

polymer firebase-polymer

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