小编Roy*_*ins的帖子

样式在开发期间未应用于vue Web组件

在开发Vue Web组件时,style它不会应用于Web组件,而是添加到head文档的组件中.这意味着在DOM DOM中忽略该样式.以下是我在main.js中包装Web组件的方法:

import Vue from 'vue';
import wrap from '@vue/web-component-wrapper';
import MyWebComponent from './components/MyWebComponent';

const WrappedElement = wrap(Vue, MyWebComponent);

window.customElements.define('my-web-component', WrappedElement);
Run Code Online (Sandbox Code Playgroud)

同样,样式标记内的任何CSS规则都不会生效.

当我为生产构建时,样式添加到Web组件中.我使用以下命令进行包装:

vue-cli-service build  --target wc --name my-web-component ./src/components/MyWebComponent.vue
Run Code Online (Sandbox Code Playgroud)

有没有办法实现同样的目的vue-cli-service serve

编辑:示例repo:https://github.com/snirp/vue-web-component

edit2:我觉得我的问题与这个问题密切相关.我无法理解变通方法,我会重视一个更基本的解决方案.

css web-component vue.js vuejs2

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

数组数组的"列总数"的模式

我正在寻找一种模式来获取每个第n项数组的总数.从概念上讲,这就像获取数据表的列总数一样.

var dataRows = [
  [10, 11, 12, 13],
  [20, 21, 22, 23],
  [30, 31, 32, 33]
]
// The outcome should be:
// [ 60, 63, 66, 69]
Run Code Online (Sandbox Code Playgroud)

我在服务器端有一些等效的Python代码,但决定它应该在客户端处理,因此在javascript中.这是等效的Python代码:

[sum(i) for i in zip(*data_rows)]
Run Code Online (Sandbox Code Playgroud)

你会怎么写这个?我确信代码会更长,没有zip,解包和列表理解,但它可以优雅地完成吗?还有扩展JS核心库的库吗?

javascript arrays

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

多语言网站的URL的最佳实践

什么被认为是翻译网站的URL的最佳策略?我经常看到的事情是:

http://example.com/english-slug.html
http://example.com/de/english-slug.html
http://example.com/fr/english-slug.html
Run Code Online (Sandbox Code Playgroud)

这具有(次要)优点,即用户可以通过修改URL手动切换到另一种语言.缺点似乎是URL包含错误语言的slug,每个页面都不是默认语言.我想这会导致SEO惩罚.

另一种方法是翻译slug并可选地省略语言标识符:

http://example.com/english-slug.html
http://example.com/deutscher-slug.html
http://example.com/slug-francois.html
Run Code Online (Sandbox Code Playgroud)

有些语言并没有真正让自己变得"迷茫",比如俄语,汉语和阿拉伯语.你最终会得到毫无意义的音译.

url multilingual url-design

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

Django Rest框架在嵌套关系上保持返回错误

盯着我的代码很长一段时间,我一直遇到同样的错误.有趣的是,我为我的模型的另一部分制作了一组类似的序列化程序,这些工作正常.

这是我不断得到的错误:

/onderhoudapi/conditiedeel/.json处的AttributeError在尝试获取gebreken序列化程序上的 字段值时出现AttributeError ConditiedeelSerializer.序列化程序字段可能名称不正确,并且与Conditiedeel 实例上的任何属性或键都不匹配.原始异常文本是:'Conditiedeel'对象没有属性'gebreken'.

serializers.py

class GebrekSerializer(serializers.ModelSerializer):
    class Meta:
        model = Gebrek
        fields = ('naam', 'get_type', 'get_omvang_waarde', 'get_intensiteit_waarde', 'get_ernst_waarde')


class ConditiedeelSerializer(serializers.ModelSerializer):
    gebreken = GebrekSerializer(many=True, read_only=True)

    class Meta:
        model = Conditiedeel
        fields = ('deel', 'conditiescore', 'gebreken', )
Run Code Online (Sandbox Code Playgroud)

models.py

class Conditiedeel(models.Model):
    deel = models.OneToOneField(Deel, null=True, blank=True)
    conditiegroep = models.ForeignKey(Conditiegroep)
    conditiescore = models.IntegerField(choices=CONDITIE_KEUZES)

    #some class methods here


class Gebrek(models.Model):
    naam = models.CharField(max_length=80)
    omvang = models.IntegerField(choices=OMVANG_KEUZES)
    intensiteit = models.IntegerField(choices=INTENSITEIT_KEUZES)
    conditiedeel = models.ForeignKey(Conditiedeel)
    nengebrek = models.ForeignKey(Nengebrek)

    #class methods here …
Run Code Online (Sandbox Code Playgroud)

django django-rest-framework

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

admin中出错:__str__返回非字符串(类型NoneType)

尝试将实例添加到我的某个模型时,管理员会返回此错误.模型本身有一个正确的str()方法,并且还没有实例.还尝试用静态方法替换str()方法或完全删除它.没运气.

该错误似乎指向管理员的历史记录部分出错.Stacktrace指向第33行.

Error during template rendering

In template /Users/snirp/juis/snirpdrive/glotto/venv/lib/python3.6/site-packages/django/contrib/admin/templates/admin/change_form.html, error at line 33
__str__ returned non-string (type NoneType)
23  {% endblock %}
24  {% endif %}
25  
26  {% block content %}<div id="content-main">
27  {% block object-tools %}
28  {% if change %}{% if not is_popup %}
29    <ul class="object-tools">
30      {% block object-tools-items %}
31      <li>
32          {% url opts|admin_urlname:'history' original.pk|admin_urlquote as history_url %}
33          <a href="{% add_preserved_filters history_url %}" class="historylink">{% trans "History" %}</a>
34 …
Run Code Online (Sandbox Code Playgroud)

django admin typeerror models

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

用于计算属性的动态“v-model” - 基于路由参数

我正在构建一个可用于设置各种 vuex 属性的组件,具体取决于路由中传递的名称。这是它的天真要点:

<template>
  <div>
    <input v-model="this[$route.params.name]"/>
  </div>
</template>

<script>
export default {
  computed: {
    foo: {
      get(){ return this.$store.state.foo; },
      set(value){ this.$store.commit('updateValue', {name:'foo', value}); }
    },
    bar: {
      get(){ return this.$store.state.bar; },
      set(value){ this.$store.commit('updateValue', {name:'bar', value}); }
    },
  }
}
</script>
Run Code Online (Sandbox Code Playgroud)

请注意,我传递this[$route.params.name]v-model, 以使其动态化。这适用于设置(组件加载正常),但是在尝试设置值时,我收到此错误:

Cannot set reactive property on undefined, null, or primitive value: null

我认为这是因为this内部v-model变得未定义(?)

我怎样才能使这项工作?

更新

我也很想知道为什么这不起作用(编译错误):

<template>
  <div>
    <input v-model="getComputed()"/>
  </div>
</template>

<script>
export default {
  computed: {
    foo: …
Run Code Online (Sandbox Code Playgroud)

javascript vue.js vue-router vuex v-model

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

在SQLAlchemy(+ Flask)中创建自引用M2M关系

在尝试学习Flask时,我正在构建一个简单的Twitter克隆.这将包括用户跟随其他用户的能力.我试图通过SQLAlchemy建立一个关系数据库来允许这个.

我想我需要在用户上自我引用多对多关系.根据SQLAlchemy文档,我到达:

#imports omitted    

app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///twitclone.db'
db = SQLAlchemy(app)

Base = declarative_base()

user_to_user = Table("user_to_user", Base.metadata,
    Column("follower_id", Integer, ForeignKey("user.id"), primary_key=True),
    Column("followed_id", Integer, ForeignKey("user.id"), primary_key=True)
)

class User(db.Model):
    __tablename__ = 'user'
    id = Column(Integer, primary_key=True)
    name = Column(String, unique=False)
    handle = Column(String, unique=True)
    password = Column(String, unique=False)
    children = relationship("tweet")
    following = relationship("user",
                    secondary=user_to_user,
                    primaryjoin=id==user_to_user.c.follower_id,
                    secondaryjoin=id==user_to_user.c.followed_id,
                    backref="followed_by"
    )

#Tweet class goes here

db.create_all()

if __name__ == "__main__":
    app.run()
Run Code Online (Sandbox Code Playgroud)

运行此代码会导致创建数据库时不会出现任何错误消息.然而,简单地省略了将用户连接到用户的整个部分(表).这是User表的定义:

CREATE TABLE user (
    id INTEGER …
Run Code Online (Sandbox Code Playgroud)

sqlalchemy flask self-reference

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

从 git 标签获取版本(通过 pbr)

我使用pbr进行包装。它从 git 标签中获取版本并将其应用于 setup.py

现在我还想在包内提供可用的版本。例如有一个__version__属性。我可以pbr为此使用图书馆吗?

还有另一个库:versioneer,它也从 git 标签中提取版本,但这会增加一个额外的要求。我更愿意从pbr

python versioning

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