我想知道大公司是如何在他们的页面上模块化组件的.Facebook就是一个很好的例子:
有一个团队致力于搜索,它有自己的CSS,javascript,html等.
有一个团队正在处理新闻源,它有自己的CSS,javascript,html等......
... 而这样的例子不胜枚举
他们不可能都知道每个人都在命名他们的div标签和诸如此类的东西,那么控制器(?)在最后一页上挂钩所有这些组件是做什么的?
注意:这不仅适用于Facebook - 任何拥有独立团队的公司都有一些逻辑可以帮助他们解决问题.
编辑:谢谢所有的回复,不幸的是我仍然没有真正找到我正在寻找的东西 - 当你检查源代码(授予其缩小),div有UID,我的猜测是有一个编译过程贯穿并使每个组件都独一无二,重命名div和css规则..任何想法?
编辑2:感谢所有人提出你的想法 - 赏金得到了最高的回答.问题的目的是模糊不清 - 我认为这引发了一场非常有趣的讨论.随着我改进构建过程,我将贡献自己的想法和经验.
谢谢大家!马特穆勒
我无法想出这个.textarea在Firefox中突出显示时,我正试图摆脱蓝光.
这是我的CSS:
textarea
{
margin:0;
padding:0;
width: 598px;
height: 600px;
resize: none;
outline: none;
}
:focus {
outline:0;
outline:none;
}
Run Code Online (Sandbox Code Playgroud)
它在Safari中删除它,但我对Firefox没有运气.
谢谢!马特
我正在浏览各种库,并看到extend()弹出很多,但我也看到mixin()出现了.YUI既有mixins又有扩展.
这两个概念有什么区别?我何时能在mixin和扩展对象之间做出决定?
谢谢,马特
我想知道是否有办法用命名空间调用变量函数.基本上我正在尝试解析标签并将它们发送到模板函数,以便它们可以呈现html`
这是一个例子:(我使用的是PHP 5.3)
// Main php file
require_once 'template.php';
foreach (array("javascript","script","css") as $tag) {
echo template\$tag();
}
// template.php
namespace template;
function javascript() { return "Hello from javascript"; }
function css() { return "Hello from css"; }
function script() { return "Hello from script"; }
Run Code Online (Sandbox Code Playgroud)
我一直得到Parse错误:语法错误,意外的T_VARIABLE,期望第76行的T_STRING ......
谢谢!马特
我正在弄乱模板,我遇到了一种情况,我需要在浏览器中回显一个包含html和php的模板.如何评估PHP并将其发送到浏览器?
所以这是一个例子(main.php):
<div id = "container">
<div id="head">
<?php if ($id > 10): ?>
<H3>Greater than 10!</H3>
<?php else: ?>
<H3>Less than 10!</H3>
<?php endif ?>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
然后在template.php中:
<?php
$contents; // Contains main.php in string format
echo eval($contents); // Doesn't work... How do I do this line??
?>
Run Code Online (Sandbox Code Playgroud)
编辑:我的模板还允许您从控制器Smarty风格注入数据.输出缓冲区是否允许我这样做,然后评估我的PHP.理想的是它首先通过代码并首先评估所有标签,然后运行php.这样我就可以使用从我的控制器发送的数据创建循环和东西.
So maybe a more complete example:
<div id = "container">
<div id = "title">{$title}</div> <!-- This adds data sent from a controller -->
<div id="head">
<?php if ($id > 10): …Run Code Online (Sandbox Code Playgroud) 我的JSON有问题.它在PHP 5.3中正确返回(所以我不能使用json_last_error()),当我将字符串显式复制到json_decode(json_decode('{...}')时它会成功返回.它只在我通过时返回null作为变量的结果,我使用的是PHP 5.2,这就是我需要的.
输出来自PHPUnit中的JSON日志记录:
[
{
"event": "suiteStart",
"suite": "",
"tests": 2
},
{
"event": "suiteStart",
"suite": "TagTestCase",
"tests": 2
},
{
"event": "test",
"suite": "TagTestCase",
"test": "TagTestCase::test_it",
"status": "fail",
"time": 0.00248718261719,
"trace": [
{
"file": "\/UnitTest\/PHPUnit.php",
"line": 98,
"function": "run",
"class": "PHPUnit_Framework_TestSuite",
"type": "->",
"args": [
{
}
]
},
{
"file": "\/UnitTest\/PHPUnit.php",
"line": 116,
"function": "run",
"class": "PHPUnit",
"type": "->",
"args": [
]
},
{
"file": "\/UnitTest\/PHPUnit.php",
"line": 212,
"function": "__tostring",
"class": "PHPUnit",
"type": "->",
"args": [
] …Run Code Online (Sandbox Code Playgroud) 我有一个关于PHP如何处理文件系统操作的问题.我正在运行这个代码,它取决于在使用之前创建的文件,感觉就像我运行代码时它变成了竞争条件 - 有时它运行,文件被创建并且php代码使用它,有时它失败.
所以我想知道php如何处理文件系统操作,它是在后台发送它还是等到操作完成?
我正在尝试接收Backbone.js,我正在尝试解决的一个问题是人们如何在Backbone中有效地使用控制器.
我注意到控制器稍后在框架中添加,并且由于浏览器和DOM的设置方式,这些视图具有大量的控制器逻辑.此外,Backbone网站上的TODO列表示例是在没有控制器的情况下实现的.
所以我不清楚如何使用骨干的控制器方面.如果有人能对这个话题有所了解,我真的很感激.
谢谢!马特
在过去的两天里,我一直在敲打这个.由于某种原因,骨干是在继承的子模型之间共享父实例数据.下面是一个例子:
var Base = Backbone.Model.extend({
index : []
});
var Group = Base.extend({
initialize : function() {
this.index.push('from group');
}
});
var User = Base.extend({
initialize : function() {
this.index.push('from user');
}
});
var user = new User();
console.log(user.index); // ['from user']
var group = new Group();
console.log(group.index) // ['from user', 'from group']
Run Code Online (Sandbox Code Playgroud)
我正在寻找的是:
console.log(user.index); // ['from user']
console.log(group.index) // ['from group']
Run Code Online (Sandbox Code Playgroud)
任何见解?
谢谢!马特
你们如何组织你的随机函数来改进OOP类(全局函数)之外的语言功能?
我见过图书馆,但我仍然没有出售这是一个很好的解决方案,特别是如果你没有足够的功能.我特别感兴趣的是人们如何组织随机的PHP和JavaScript函数.
php ×5
javascript ×4
backbone.js ×2
architecture ×1
css ×1
extend ×1
filesystems ×1
firefox ×1
json ×1
mixins ×1
namespaces ×1
node.js ×1
organization ×1
phpunit ×1
templates ×1
textarea ×1